编辑:'更多'链接是从这里建立的:
document.getElementById("elenco_fiveboard").insertAdjacentHTML('beforeend',
"<li>" +
"Titolo: " + valore_comando + " " +
"(<a href='javascript:getInfo("+ valore_comando +");'>" +
"more" + "</a>)" +
"</li>");
所以我必须用连字符包装valore_comando但是我在尝试写
时遇到错误"(<a href='javascript:getInfo(""+ valore_comando +"");'>" +
或
"(<a href='javascript:getInfo('"+ valore_comando +"');'>" +
很抱歉,但我对JS语法并不是很强,我从一些不属于我自己的代码开始。
我有这个简单的JS函数:
getInfo = function(title){
worker.port.postMessage("maggiori_informazioni:" + title);
}
我运行它传递给变量标题一个值,但我总是得到一个错误。如果标题是&#39;示例&#39;然后JS尝试运行
getInfo = function(example)
我收到错误:
参考错误:未定义示例。 如果标题有多个单词:&#39;第一个示例&#39; 然后JS会尝试运行
getInfo = function(first example)
我收到错误:
参数列表后面的语法错误:缺失)(寻找parentesys 在&#39; first&#39;)之后。
我在这里想念的是什么? 这段代码是我第一次使用webSockets测试的一部分。如果您想查看完整代码,可以打开此index page并在您看到的第一个提醒中输入值。该值是您将在dashboard page上看到的标题。 尝试点击“更多”错误可以重现该错误。在仪表板中的每个定义的标题之后。 抱歉,网站上有意大利语,但这是用户要求。
答案 0 :(得分:2)
getInfo
引用了您的功能。所以你可以这样叫:
getInfo(value);
如果要传递字符串值并且正在传递,请使用引号 你可以简单地传递整数值。
例如:
getInfo("Message Title"); //string
getInfo(3); // Integer
您也可以这样打电话:
getInfo = function(title){
alert("maggiori_informazioni:" + title);
}("String");
<强>更新强>
您可以使用:
"(<a href='"+getInfo(valore_comando)+";'>" +
答案 1 :(得分:1)
getInfo
,因此请致电getInfo()
''
所以代码应该是
getInfo('example')
答案 2 :(得分:0)
问题是没有定义示例。如果你想用函数调用函数作为输入,它需要单引号或双引号。 "example"
或'example'
。
getInfo("example"); // Works as intended
另一种选择是创建一个包含字符串的变量,并将其传递给函数。
var myVariable = "example";
getInfo(myVariable); // Still works, myVariable is a string with value "example"
答案 3 :(得分:0)
你将不得不逃避一些引号。
"(<a href=\"javascript:getInfo('"+ valore_comando +"');\">" +
\
属性的引号之前的href
字符告诉JavaScript解析器它们是字符串的一部分而不是字符串的开头或结尾。