Javascript 动态创建表单中的showhide函数不起作用
我正在开发一个带有表单的网页,该表单是通过javascript(jquery)动态创建的。对于每个(重复的)表单元素集,添加了一个显示/隐藏函数来显示和隐藏元素,我没有让这个显示/隐藏代码工作-我怀疑错误位于下面的代码中,我想我很难将引号放在正确的位置(?)控制台指示错误“Uncaught SyntaxError:Unexpected token}”我不理解;排除可疑的错误行时,没有进一步的错误,我看不出这个“}”在哪里显示,在哪里不应该显示 Javascript代码:Javascript 动态创建表单中的showhide函数不起作用,javascript,jquery,Javascript,Jquery,我正在开发一个带有表单的网页,该表单是通过javascript(jquery)动态创建的。对于每个(重复的)表单元素集,添加了一个显示/隐藏函数来显示和隐藏元素,我没有让这个显示/隐藏代码工作-我怀疑错误位于下面的代码中,我想我很难将引号放在正确的位置(?)控制台指示错误“Uncaught SyntaxError:Unexpected token}”我不理解;排除可疑的错误行时,没有进一步的错误,我看不出这个“}”在哪里显示,在哪里不应该显示 Javascript代码: function Sho
function ShowHide(id) {
$(id).toggle();
}
$(document).ready(function () {
var buildform = function () {
var form ='<div id="form">'
for (var i = 0; i < 2; i++) {
form += '<div id="filename"' + i + '> Document </div> </td>';
//error in next line (?)
form += '<button onclick="ShowHide(\'#filename'+ i +'\')"> Show/hide document </button> </td> </tr>';
} //for i
form += '</div>'; //id="form"
console.log('FORM: '+form);
return
} //buildform()
$("#wrapper").append(form);
}); //$(document).
函数显示隐藏(id){
$(id).toggle();
}
$(文档).ready(函数(){
var buildform=函数(){
变量形式=“”
对于(变量i=0;i<2;i++){
表格+=‘文件’;
//下一行出错(?)
表单+='显示/隐藏文档';
}//对我来说
form+='';//id=“form”
console.log('FORM:'+FORM);
返回
}//buildform()
$(“#包装”)。附加(表格);
});//$(文件)。
HTML代码:
<div id="wrapper"></div>
javaconsole()的输出:
文档显示/隐藏文档文档显示/隐藏文档
您的报价是错误的
form += '<td> <button onclick="ShowHide(\'#filename'+ i + '\')"> Show/hide document </button> </td> </tr>';
在你的职能范围内:
$("#outputContainer").html(form);
正确转义引号 请更改线路:
form += '<td> <button onclick="ShowHide("#filename'+ i +')"> Show/hide document </button> </td> </tr>';
form+='thnx两者;使用您的解决方案,控制台显示的错误消失。但是,ShowHide函数似乎仍然不起作用;我测试了在按下按钮时调用该函数您正在将函数保存到一个变量,并将表单信息保存到一个变量。您在哪里设置将其输出到页面?我注意到您在注释中仍然存在的问题,并已更新了我的答案。如果您仍然存在问题,请告诉我。我只需更新上面的代码并在输出中确定问题;尽可能请参阅“filename”div id的格式不正确。修复后,它可以正常工作。谢谢您的帮助。随时!您应该接受任何一个答案供将来的读者使用,以便他们知道什么有效:)thnx。我将创建的表单附加到div元素
$("#outputContainer").html(form);
form += '<td> <button onclick="ShowHide("#filename'+ i +')"> Show/hide document </button> </td> </tr>';
form += '<td> <button onclick="ShowHide(\'#filename'+ i +'\')"> Show/hide document </button> </td> </tr>';
^ ^