У меня возникла проблема с получением параметра из функции javascript onClick
title = "as"
$('<li onClick=pushRight('+hello+') class="item"></li>')
и мой консольный журнал напечатает этот Uncaught SyntaxError: Неожиданный токен}
title = "as"
$('<li onClick="pushRight("'+hello+'")" class="item"></li>')
См. Добавленные двойные кавычки. "'+hello+'"
Также двойные кавычки над вашей функцией pushRight
.
Ваш код не будет работать, поскольку он отображает неверный html, как показано ниже.
<li onClick=pushRight(as) class="item"></li>
Смотрите, не было никаких кавычек до и после pushRight, также до и после строки
"sa"
. Знайте ошибку и исправьте. Использование inline js с html не рекомендуется. Необходимо связать события в этих сценариях.
Не используйте inline js (onlick в html).
См. Причины не использовать встроенные js здесь: https://www.google.com/search?q=Why+is+inline+js+bad%3F
Вот правильный способ с jQuery:
var $myElem = $('<li class="item"></li>');
$myElem.click(function() {
pushRight('hello');
});
И это довольно легко даже без jQuery:
var myElem = document.createElement('li');
myElem.className = 'item';
myElem.addEventListener('click', function() {
pushRight('hello');
});
Демо-версия здесь: http://jsbin.com/uDURojOY/1/edit
Попробуйте так:
hello = 'anything';
$('<li onClick=pushRight("'+hello+'") class="item"></li>')
jQuery
для этого элемента?