我正在尝试在C#中的页面加载时绑定JavaScript事件,我已经尝试过此代码
Response.Write("<li><a href='#' onclick=BindID('" + SubMenu.ParentId + "','" + SubMenu.FormName + "','" + URL + "','" + SubMenu.FormCaption+ "')>" + newSubMenuItem.Text + "</a></li>");
执行后,在我的html页面中(在浏览器上)生成以下输出。
<a href="#" onclick="BindID('59','Registration','ApplicationForms/CaseManagment/Case.aspx','Copyrights" filing')="">Copyrights Filing</a>
变量SubMenu.FormCaption
包含字符串值,'Copyrights filing'
但是当变量包含空格并且值变为时,浏览器将添加双引号'Copyrights" filing'
。
代码有什么问题?
那是因为onclick必须看起来像:
onclick="BindID(...)"
和你的样子:
onclick=BindID(...)
所以只需在前后添加引号
Response.Write("<li><a href='#' onclick=\"BindID('" + SubMenu.ParentId + "','" + SubMenu.FormName + "','" + URL + "','" + SubMenu.FormCaption+ "')\">" + newSubMenuItem.Text + "</a></li>");
所以浏览器不知道如何准确地解析它,然后他猜想它会起作用
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句