javascript - 解析属性名称时出错

标签 javascript xhtml

浏览器说我的 xhtml 中此函数的 javascript 存在错误。如果我删除这个函数,错误就会消失。对我来说,这段代码在语法上看起来很完美:

    function toAscii(text) {
        for (var i=0; i<text.length; i++) {
            var charCode = text.charCodeAt(i);
            var ascii = charCode.toString(2);
            console.log(ascii);
        }
    }       

Chrome 错误:

This page contains the following errors:

error on line 19 at column 31: error parsing attribute name
Below is a rendering of the page up to the first error.

火狐错误:

Erro no processamento de XML: formatação incorreta 
Posição: file:///C:/Users/Carlos/Desktop/ascii%20converter.xhtml
Número da linha 19, coluna 33:
                        for (var i=0; i<text.length; i++) { 
---------------------------------------------------^
<小时/>

这是整个 XHTML:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>
    <title>ASCII Converter</title>
    <meta charset="UTF-8"/>

    <script type="text/javascript">
        function converter() {
            var text = document.getElementById('texto').value;
            toAscii(text);
        }

        function toAscii(text) {
            for (var i=0; i<text.length; i++) {
                var charCode = text.charCodeAt(i);
                var ascii = charCode.toString(2);
                console.log(ascii);
            }
        }       
    </script>
</head>

<body>
    Texto (Entrada):<br/>
    <input id="texto" type="text"/><br/>
    ASCII (Saída):<br/>
    <input id="ascii" type="text"/><br/>
    <input type="button" id="botao" value="Converter" onclick="converter()"/><br/>  
</body>

</html>

最佳答案

由于您使用的是 xhtml 并且您有 <在您的代码中,您必须将代码包含在 cdata block 中

<script type="text/javascript"><![CDATA[
    function converter() {
        var text = document.getElementById('texto').value;
        toAscii(text);
    }

    function toAscii(text) {
        for (var i=0; i<text.length; i++) {
            var charCode = text.charCodeAt(i);
            var ascii = charCode.toString(2);
            console.log(ascii);
        }
    }       
]]></script>

关于javascript - 解析属性名称时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19473058/

相关文章:

xhtml - 为什么嵌套在p中的表单不验证为XHTML

html - 如何在固定高度 <div> 的中间垂直对齐 <table>?

javascript - token "."出现语法错误,jshint 中此 token 后应有标识符

javascript - 如何创建一个可以影响任何值类型的方法?

javascript - 许多用户连接到应用程序后 Node.js 、 path.js 崩溃

doctype - 如何从 Oracle ADF 生成有效的 xhtml/xml 输出

html - 哪些浏览器支持 <embed> 和 <object> 标签?

javascript - 我应该如何将服务器端数据与 HTML 中的客户端 UI 元素相关联?

javascript - 如何将 sourcemap 与来自字符串的评估 TypeScript 一起使用

javascript - x 轴上的 float 阈值