我正在使用 CDATA 来转义脚本,但在 IE8 的调试器中,我仍然在 for 循环条件中收到此消息:“预期的 ')'”。我假设它仍然认为 ; 在<由 CDATA 生成的结束循环条件中。
我的 XSL 模板中的原始脚本:
<script type="text/javascript" language="javascript">
<![CDATA[
function submitform(form){
var oErrorArray = new Array();
for (i=0;i<form.length;i++)
eval("oErrorArray["+i+"]=oError"+i);
var goForm = true;
for(i=0;i<form.length;i++) {
oErrorArray[i].innerHTML = "";
if(form[i].value="")){
oErrorArray[i].innerHTML = "Error - input field is blank";
goForm = false;
}
}
if(goForm == true) form.submit();
}
function resetform(form){
form.reset();
}
]]>
</script>
Run Code Online (Sandbox Code Playgroud)
转换后生成的代码(来自 IE8 调试器):
<script type="text/javascript" language="javascript">
function submitform(form){
var oErrorArray = new Array(); …Run Code Online (Sandbox Code Playgroud)