Вместо этого:
$("#err_msg").css({"display" : "block"});
$("#cont").css({"display" : "block"});
Попробуйте это:
$("#err_msg").show();
$("#cont").show();
Кроме того, в этой строке HTML, которую вы строите, у вас есть обработчик onclick, подобный этому:
onclick='javascript:save();'
Не говоря уже о том, лучше ли здесь назначать обработчик, вы должны сделать следующее:
onclick='save();'
Под обработчиком onclick понимается JavaScript.
Обновление: Снова внимательно присмотревшись к вашему коду, похоже, что во время выполнения логики «show» (или назначения стилей) элементы в DOM еще не существуют - они являются лишь частьюСтрока, которую вы построили.Вы запускаете логику «показа» для элементов, которые еще не существуют как таковые (поэтому ничего не происходит), и затем добавляете их к #tabledata
( без изменений к ихвидимость была применена).Это выглядит не по порядку, если только я что-то упустил.
Поскольку добавление происходит независимо от видимости, изменение последовательности не повредит:
$("#tabledata").append(html);
if( err_flag !== 1 ) {
$("#err_msg").show();
$("#cont").show();
}