2013-12-19 7 views
0

У меня есть функция, которая принимает значения, возвращаемые из вызова ajax, и добавляет строку в таблицу, которая определена в значениях json, но я не думаю, что она правильно отображает таблицу , Есть ли что-то особенное, что мне нужно делать? Я знаю, что переменная data ['table_name'] имеет в ней правильное значение.Добавить таблицу строк с результатами Ajax

Вот код, который у меня есть.

function ajaxSuccess() { 
      var data = JSON.parse(this.responseText); 
      var elementObj = document.getElementById(data['table_name']); 

       var i = elementObj.size() + 1; 
       elementObj.append('<tr><td>Date</td><td>Name</td><td>' + data['new_comment'] + '</td></tr>'); 
       i++; 
       return false; 
     } 

ответ

0

Неправильное использование.

У вас есть JS переменной var elementObj = document.getElementById(data['table_name']);

И вы используете JQuery append().

Попробуйте var elementObj = $("#"+data['table_name']); вместо этого.

Также проверьте консоль на наличие ошибок, вы, вероятно, получать это:

Uncaught TypeError: Object #<HTMLDivElement> has no method 'append' 

P.S. вы также можете попробовать следующее:

$(elementObj).append('<tr><td>Date</td><td>Name</td><td>' + data['new_comment'] + '</td></tr>'); 

без переписывания var elementObj переменной jquery.

+0

Благодарим за разъяснение. Я как могу заставить его работать с js var row = elementObj.insertRow (0); команда – user2300933

+0

@ user2300933 yep, это работает. Просто придерживайтесь js или jquery. –

Смежные вопросы