包含字符串的变量在传递给onclick函数时为空
Variable that contains a string is empty when passed through an onclick function
我试图使用onclick事件将字符串传递到函数中。但是,当我单击链接时,函数内的变量什么也不返回。它是空的。当我传递一个数字作为参数时,我没有任何问题,并且在警报中显示没有问题。我不确定我做错了什么。
for (var j=0;j<current_order.length;j++){
var note_id = "note" + (j+1);
text = text + "<button onClick= 'deleteItemfromOrder("+j+")'>Delete</button>";
text = text + "<a id = '"+note_id+"' onClick= 'toggleNote("+note_id+")'>Notes</a>";
alert(text);
}
这是我试图传递note_id到的函数:
function toggleNote(showHideDiv) {
alert(showHideDiv);
}
我已经尝试了多种方法将字符串作为参数传递给函数EG:
text = text + "<a id = '"+note_id+"' onClick= 'toggleNote('"+note_id+"')'>Notes</a>";
和
text = text + "<a id = '"+note_id+"' onClick= 'toggleNote(''"+note_id+"';)'>Notes</a>";
但是每次在函数的另一边字符串显示为空时。如果我传递一个数字是没有问题的,例如:
text = text + "<a id = '"+note_id+"' onClick= 'toggleNote("+2+")'>Notes</a>";
你的问题是你缺少引号,数字不需要引号,如
onclick='toggleNote(3)'
但是字符串有
onclick='toggleNote("string")'
同样,使用相同的引号也不起作用
onclick='toggleNote('string')'
意味着你必须做
text = text + "<a id = '"+note_id+"' onClick= 'toggleNote('""+note_id+"'")'>Notes</a>";
但是你真正应该做的是创建元素
for (var j = 0; j < current_order.length; j++) {
(function(i) {
var btn = document.createElement('button');
var anc = document.createElement('a');
btn.addEventListener('click', function() {
deleteItemfromOrder(i);
});
btn.textContent = 'Delete';
anc.addEventListener('click', function() {
toggleNote("note" + (i+1))
});
anc.textContent = 'Notes';
})(j);
}
相关文章:
- 将字符串作为参数传递给函数onclick event jquery
- 将具有特殊字符的值传递给函数onclick事件
- 如何调用mask()jquery函数onclick
- 脚本不会使用 ajax 函数 onClick 和 $_POST 获取变量
- 如何使用JavaScript函数(onclick)在URL中添加我的“No”或“ID”
- jquery 函数 onclick 和 onload myFunction 不是一个函数
- 我们可以调用两个函数 onClick 事件吗?
- 将值传递给 JavaScript 函数 onclick
- jQuery 函数 onclick (span class) 来自 jquery datepicker
- 调用函数onClick,并将元素's的data-*属性
- 运行函数onclick.正在单击的所有按钮
- 正在启动一个函数onclick(),该函数传递被单击元素的id
- 第二个函数onclick没有被调用
- HTML执行不同的php函数onclick
- 调用javascript函数onclick=“;fn1()”;并且onclick=“;javascript:fn1()&
- 触发javascript函数onclick
- 如何在函数onClick中转换值
- 启动按钮下拉赢得't运行函数onclick
- Javascript更多函数onclick和ClassName
- 向函数'onclick'添加SQL