无法使用纯JavaScript而不是jQuery更改innerHtml

时间:2010-09-16 22:19:10

标签: javascript jquery

这是简单页面的源代码:

<html>
<head>
    <title>Test</title>
    <script src="jquery-1.4.2.js" type=text/javascript></script>
</head>
<body>
    <div id="divText">Original</div>

    <script type="text/javascript">
        var vText = document.getElementById('divText');
        vText.innerText = 'Changed';
        alert(vText.innerHTML);
        $('divText').text = 'Changed with jQuery';
        alert(vText.innerHTML);
    </script>
</body>
</html>

“jquery-1.4.2.js”文件位于同一文件夹中。

两个警报都显示“原始”文本,浏览器中的文字也显示“原始”......

我的代码出了什么问题?欢迎任何想法。

2 个答案:

答案 0 :(得分:3)

<强> 1 即可。 quick google(花了我2秒钟)显示文字是功能,而不是属性。像.text('lol')一样使用它直接来自API。

http://api.jquery.com/text/

<强> 2 即可。 innerText在每个浏览器/ DOM属性中都不可用。

答案 1 :(得分:2)

正如您在标题中指出的那样,您将要更改内部html。你还需要$('#divText')选择器来使用jQuery来访问div。

<html>
<head>
    <title>Test</title>
    <script src="jquery-1.4.2.js" type=text/javascript></script>
</head>
<body>
    <div id="divText">Original</div>

    <script type="text/javascript">
        var vText = document.getElementById('divText');
        vText.innerHTML = 'Changed';
        alert(vText.innerHTML);
        alert($('#divText'));
        $('#divText').html('Changed with jQuery');
        alert(vText.innerHTML);
    </script>
</body>
</html>