Я строю строку таблицы в вызове jQuery $.ajax()
, который строит строку при успешном выполнении сценария PHP.
Я вызываю функцию, которая строит новую строку таблицы на основе результатов сценария. Вот функция:
function addNewRow(addDocs, newClassID, classNumberAdd, classNameAdd) {
var newRow = '';
newRow += $('#classesTable tbody:last').after('<tbody>' +
'<tr bgcolor="#EFE5D3" style="font-weight: bold;">' +
'<td width="35px"><a class="classEditLink" name="' + newClassID + '" href="#">Edit</a></td>' +
'<td width="20px"><input type="checkbox" class="chkSelectToDelete" name="deleteClasses[]" value="' + newClassID + '" /></td>' +
'<td>' + classNumberAdd + '</td>' +
'<td>' + classNameAdd + '</td>' +
'</tr>');
if (addDocs == 'true') {
$('#docsTable input[type="checkbox"]:checked').each(function() {
var $row = $(this).parents('tr');
var docID = $row.find('td:eq(0) input').val();
var docName = $row.find('td:eq(1)').html();
var docDescription = $row.find('td:eq(2)').text();
newRow += $('#classesTable tbody:last').append('<tr class="classDocsRow">' +
'<td></td>' +
'<td align="right"><input type="checkbox" class="chkRemoveDocs" name="removeDocs[]" value="' + docID + '-' newClassID + '" /></td>' +
'<td width="245px">' + docName + '</td>' +
'<td width="600px">' + docDescription + '</td>' +
'</tr>');
});
//$('#classesTable tbody:last').append('<tr class="classDocsRow"><td></td><td align="right"><input type="checkbox" class="chkRemoveDocs" name="removeDocs[]" value="' + docID + '-' newClassID + '" /></td><td width="245px">' + docName + '</td><td width="600px">' + docDescription + '</td></tr>');
} else {
newRow += $('#classesTable tbody:last').append('<tr class="classDocsRow">' +
'<td colspan="4">' +
'<strong>No documents are currently associated with this class.</strong>' +
'</td>' +
'</tr>');
}
return newRow;
}
Aptana Eclipse IDE сообщает об ошибке в двух местах в разделе "if (addDocs == 'true')
": первая ошибка, " отсутствует) после списка аргументов ", находится во второй строке после "newRow += ...
"и вторая ошибка" отсутствует; перед оператором"через две строки. Обратите внимание, что у меня также весь этот раздел в одной строке (не разбитый на строки) закомментирован вскоре после этого. Это показывает только одну ошибку, ошибку о пропущенном правом парене.
Если я закомментирую все в предложении if и передам addDocs как false, предложение else вернет новую строку, как и ожидалось.
Должно быть, это просто синтаксическая проблема js, но я не вижу, что я делаю неправильно.
Любая помощь будет принята с благодарностью!