0
Я работаю над простой функцией, в которой у меня есть таблица строк, а в каждой строке - editButton. В OnClick кнопки редактирования, я звоню сильфона функции и получаю ошибку:Uncaught SyntaxError: Неожиданный идентификатор
Uncaught SyntaxError: Unexpected identifier
Он указывает на линию 1 из файла PHP, который просто имеет декларацию DOCTYPE (который, кажется, хорошо, когда я загружаю страница первая - ошибка возникает только при нажатии кнопки редактирования). Функция ниже:
function editGUI(rowNum, carerName, carerAddress, carerMobile, carerID){
row=document.getElementById('Row'+rowNum);
row.innerHTML= '<tr id="Row' + i + '">\
<td><input type="text" value="' + carerName + '"></td>\
<td><input type="text" value="' + carerAddress + '"></td>\
<td><input type="text" value="' + carerMobile + '"></td>\
<td> HISTORY </td>\
<td><button onClick="editCarer('+carerID+');">EDIT</button></td>\
</tr>';
};
Первоначальный HTML динамически добавляется javascrript и корректно отображается на экране:
for (var i = 0; i < JSON_csw.length; i++)
{
table += '<tr id=Row'+ i +'>\
<td>' + JSON_csw[i].carerName + '</td>\
<td>' + JSON_csw[i].carerAddress + '</td>\
<td>' + JSON_csw[i].carerMobile + '</td>\
<td> HISTORY </td>\
<td><button id=btn[' + i + '] \
onClick="editGUI('+ i +','+JSON_csw[i].carerName+','+JSON_csw[i].carerAddress+', '+JSON_csw[i].carerMobile+', '+JSON_csw[i].carerID+');">\
EDIT</button></td>\
</tr>';
}
DOCTYPE декларации;
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
Любая помощь приветствуется, я не могу обнаружить ошибку
'i' не определен в вашем первом фрагменте кода:' row.innerHTML = '
@MarcB спасибо, что я этого не заметил. Я удалил i, но я все равно получаю ту же ошибку. – user2363025
ответ
Если
carerID
не число, то оно должно быть заключено в кавычки. Что-то вроде:Примечание: я не пробовал этот код. Возможно, вам придется играть, избегая цитат.
источник
2014-11-14 17:37:51 Malvolio
carerID - это номер – user2363025
Я думаю, ваша проблема вызвана из-за эту линию:
При передаче параметров в функцию editGUI в обработчике щелчка, вы не имеете кавычек для обозначения строк. Для элемента выборки в JSON_csw, это то, как эта строка добавляется в HTML:
Вы должны заключать строки в кавычки, например:
Я думаю, что это будет тогда работать правильно. Я тоже не пробовал этот код, используйте Inspect Element, чтобы увидеть, как на самом деле отображается обработчик onClick в DOM. Затем используйте соответствующее экранирование, и вам должно быть хорошо идти.
источник
2014-11-14 17:39:35 Ananth
спасибо или ваш ответ. Я скопировал вашу линию и заменил ее на мою, и я все равно получаю ту же ошибку. Я попытался проверить элемент ранее и подумал, что все выглядит нормально. Кнопка \t \t \t \t не РЕДАКТИРОВАТЬ –
user2363025
Да нет никаких цитат для строк «Alika Blackwell» и т. Д. Замените «с помощью» и повторите попытку – Ananth
Хорошо, я вижу. Я заменил, как было предложено, и теперь получил другую ошибку: Uncaught SyntaxError: Неожиданный токен} – user2363025
Смежные вопросы