较小的运算符在javascript代码中给出错误

我在我的xhtml文件中有一个javascript代码。那就是:较小的运算符在javascript代码中给出错误

<h:head> 

<h:outputStylesheet library="css" name="styles.css" />

<script>

function dataTableSelectOneRadio(radio) {

var id = radio.name.substring(radio.name.lastIndexOf(':'));

var el = radio.form.elements;

for (var i = 0; i < el.length; i++) {

if (el[i].name.substring(el[i].name.lastIndexOf(':')) == id) {

el[i].checked = false;

}

}

radio.checked = true;

}

</script>

</h:head>

问题IST,里面的for循环它给出了“<”经营者说,错误“元素的内容必须包含合式的字符数据或标记。”我认为它认为“<”的,即“身体一个HTML元素,HTML等,但我不知道我怎样才能解决这个

感谢

编辑:?现在我试过,但仍然是一个错误。是否有语法错误,你看到

<script> 

function dataTableSelectOneRadio(radio) {

var id = radio.name.substring(radio.name.lastIndexOf(':'));

var el = radio.form.elements;

for (var i = 0; i &lt; el.length; i++) {

if (el[i].name.substring(el[i].name.lastIndexOf(':')) == id) {

el[i].checked = false;

}

}

radio.checked = true;

}

</script>

错误说:

myaccounts.xhtml:5:52 Expected) but found ; 

for (var i = 0; i &lt; el.length; i++) {

^

myaccounts.xhtml:5:57 Expected ; but found)

for (var i = 0; i &lt; el.length; i++) {

^

回答:

尝试使用CDATA的XML解析器不读的JavaScript内容,你的代码会是这样的:

<h:head> 

<h:outputStylesheet library="css" name="styles.css" />

<script>

// <![CDATA[

function dataTableSelectOneRadio(radio) {

var id = radio.name.substring(radio.name.lastIndexOf(':'));

var el = radio.form.elements;

for (var i = 0; i < el.length; i++) {

if (el[i].name.substring(el[i].name.lastIndexOf(':')) == id) {

el[i].checked = false;

}

}

radio.checked = true;

}

// ]]>

</script>

</h:head>

回答:

Facelets的是一种基于XML的视图技术。字符<,>&是XML中的特殊字符。它们需要分别替换为&lt;,&gt;&amp;

for (var i = 0; i &lt; el.length; i++) { 

// your code

}

最好将整个JS代码包装在<![CDATA[ block中。

以上是 较小的运算符在javascript代码中给出错误 的全部内容, 来源链接: utcz.com/qa/257686.html

回到顶部