当我将一个字符串值放入onclick时,控制台会返回'Uncaught SyntaxError:Unexpected token ILLEGAL'?如果它只是一个数字但它不是一个字符串,它工作正常!
码:
document.getElementById("productMenu").innerHTML += "<div class=\"leftMenuItems\" onclick=\"javascript:showResources(" + p_codes + ");\">" + p_codes + " - " + p_names + "</div>";
<div class="leftMenuItems" onclick="javascript:showResources(1234ABC);">Product Name</div>
4 回答
你缺少报价
因为
1234ABC
是一个字符串,而数字不需要引号问题是如果你没有将参数包装在引号中,JavaScript就会寻找一个同名的变量 . 由于变量名不能以数字文字开头,因此您收到错误 . 单独的数字将作为整数传递 .
您应该使用以下内容:
试试这个,它对我有用 .
在以下string.format中的quote中传递字符串:
HttpUtility.HtmlEncode("'"+personnelPhotoList[j].name.Trim()+"'")
代码示例:
不知怎的,它没有发布完整的代码,这里又是
strPhotos.Append(String.Format("<input type=\"button\" onclick = \"Delete({0}) return false;\", HttpUtility.HtmlEncode("'"+personnelPhotoList[j].name.Trim()+"'")));