繁体   English   中英

将参数传递给javascript onclick函数

[英]passing parameter to javascript onclick function

我有从javascript onClick函数获取参数的问题

title = "as"
$('<li onClick=pushRight('+hello+') class="item"></li>')

和我的控制台日志打印此Uncaught SyntaxError:Unexpected token}

请不要使用内联js(在你的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>')
title = "as"
$('<li onClick="pushRight("'+hello+'")" class="item"></li>')

请参阅添加的双引号。 "'+hello+'"也是pushRight函数的双引号。

您的代码将无法正常工作,因为它会呈现无效的html,如下所示。

<li onClick=pushRight(as) class="item"></li>

请注意,pushRight之前和之后没有引号,也在字符串"sa"之前和之后。 知道错误并纠正。 不建议在html中使用内联js。您必须在这些场景中绑定事件。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM