我在javascript中创建一个动态按钮并在其点击时调用一个函数,但是我无法将字符串参数传递给它,这应该是正确的代码。 我这样做。
document.getElementById(divfield).innerHTML +="<input type='button' value='-'class='remove_this"+i+"' onclick=' removed("+i+",'"+s+"') '>";
这里我是一个整数,s是一个变量持有string.how我应该传递字符串变量。
答案 0 :(得分:2)
我猜你想要这样的东西:
var div = document.getElementById('divfield');
var input = document.createElement('input');
input.type = 'button';
input.value = '-';
input.setAttribute('class', 'remove_this' + i);
input.onclick = function () {
removed(i,s)
}
div.appendChild(input);
jsfiddle:demo
答案 1 :(得分:0)
如果您尝试这样做,则错过了代码上的quotation
个标记:
innerHTML +="<input ..... onclick=' removed(" + i + ",\" " + s + "\ ") '>";
没有任何问题...
根据您的代码,input
元素将按如下方式创建:(通知onclick
属性):
<input type="button" value="-" class="remove_this1" onclick=" removed(1," ss') '>
if:(i = 1)和(s =“ss”)例如