我正在制作一个简单的加载栏,Facelets 似乎不喜欢我的 JavaScript 中的条件语句。
这是我的代码:
<div class="loader_bar">
<div></div>
</div>
<script type="text/javascript">
$(document).ready(function() {
setTimeout(function() {
var current_width = parseFloat($('.loader_bar div').css('width'));
var max_width = parseFloat($('.loader_bar').css('width'));
var next_width = current_width / max_width * 100 + 1;
if (next_width <= 100) {
$('.loader_bar div').css('width', next_width + '%');
setTimeout(arguments.callee, 10);
}
}, 100);
});
</script>
当我加载页面时,出现以下错误:
javax.servlet.ServletException: Error Parsing /device/main/site/test.xhtml: Error
Traced[line: 69] The content of elements must consist of well-formed character data
or markup.
对应if statement
中的运算符我的 JS 函数“<= in
if(next_width <= 100).
为什么这不起作用?
最佳答案
尝试将 JavaScript 代码放入 CDATA 标记内
<script type="text/javascript">
<![CDATA[
$(document).ready(function() {
....
}
]]>
</script>
关于javascript - 在 Facelets 中使用 JavaScript 时出现 XHTML 解析错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10140711/