标签: innerhtml

document.getElementByID("test").innerHTML给出TypeError:'undefined'不是函数(评估'document.getElementByID("test")')

我试图使用JavaScript来设置div的内部html,但由于某种原因,它无法正常工作.我发现其他人之前遇到过这个问题,但我在其他帖子中找到的解决方案都没有.我不明白什么是错的.

这是我的测试功能:

function test(){
    document.getElementByID("test").innerHTML = "why won't you work";
    alert("hello");
}
window.onload = test;
Run Code Online (Sandbox Code Playgroud)

正在调用该函数,因为如果注释掉document.getElementByID行,则警报框可以正常工作.如果没有注释该行,则它不起作用.我的控制台显示该行的错误:

TypeError: 'undefined' is not a function (evaluating 'document.getElementByID("test")')
Run Code Online (Sandbox Code Playgroud)

当然,我的页面正文中有一个id.

<div id="test"></div>
Run Code Online (Sandbox Code Playgroud)

我在网上发现的一切都说这应该有效.我搞不清楚了.任何帮助将不胜感激.

html javascript innerhtml getelementbyid

8
推荐指数
1
解决办法
2万
查看次数

为什么事件侦听器只在for循环中创建的最后一个元素上注册?

我正在使用JavaScript创建复选框,将onchange侦听器添加到它们并使用循环将它们添加到div.但是,只有最后一个复选框才会注册事件侦听器.

为什么会这样?

var div = document.getElementById("mydiv");
for (var i = 0; i < 5; i++) {
    div.innerHTML += ("<br>" + i);
    var input = document.createElement("input");
    input.type = "checkbox";
    input.onchange = function() {
      alert("foo");
    };
    div.appendChild(input);
}
Run Code Online (Sandbox Code Playgroud)
<div id="mydiv"></div>
Run Code Online (Sandbox Code Playgroud)

html javascript for-loop innerhtml event-handling

8
推荐指数
1
解决办法
405
查看次数

在Angular 5中使用[innerHTML]是否安全?

我看到有相互矛盾的报道,说在Angular2 +中使用[innerHTML]标记很危险。现在还是这样吗?还是已经解决?

例如,此代码很危险:

<div [innerHTML]="post.body"></div>
Run Code Online (Sandbox Code Playgroud)

innerhtml angular

8
推荐指数
2
解决办法
1万
查看次数

如何加快IE8中innerHTML的读取速度?

我正在使用带有DataTable插件的JQuery,现在我在以下行中遇到了很大的性能问题.

aLocalData[jInner] = nTds[j].innerHTML; // jquery.dataTables.js:2220
Run Code Online (Sandbox Code Playgroud)

我有一个ajax调用,以及HTML格式的结果字符串.我将它们转换为HTML节点,那部分是可以的.

var $result = $('<div/>').html(result).find("*:first");
// simlar to $result=$(result) but much more faster in Fx
Run Code Online (Sandbox Code Playgroud)

然后我激活启用普通表的结果到可排序的数据表.速度在Fx中是可接受的(900行大约4秒),但在IE8中不可接受(超过100秒).

我使用buildin profiler深入检查,发现上面的单行占用了99.9%的时间,我怎样才能加快速度呢?我错过了什么?

            nTrs = oSettings.nTable.getElementsByTagName('tbody')[0].childNodes;
            for ( i=0, iLen=nTrs.length ; i<iLen ; i++ )
            {
                if ( nTrs[i].nodeName == "TR" )
                {
                    iThisIndex = oSettings.aoData.length;
                    oSettings.aoData.push( {
                        "nTr": nTrs[i],
                        "_iId": oSettings.iNextId++,
                        "_aData": [],
                        "_anHidden": [],
                        "_sRowStripe": ''
                    } );

                    oSettings.aiDisplayMaster.push( iThisIndex );

                    aLocalData = oSettings.aoData[iThisIndex]._aData;
                    nTds = nTrs[i].childNodes;
                    jInner = 0;

                    for ( j=0, jLen=nTds.length ; j<jLen ; …
Run Code Online (Sandbox Code Playgroud)

performance jquery innerhtml internet-explorer-8

7
推荐指数
1
解决办法
5384
查看次数

什么是JQuery的$(元素).text()的Prototype等价物?

给出以下代码段:

<div id="myDiv">
  This is my text <span>with a span</span>
</div>    
Run Code Online (Sandbox Code Playgroud)

JQuery可以获取内部字符串:

$('#myDiv').text();
Run Code Online (Sandbox Code Playgroud)

在Prototype中有一种比以下更直观的方式:

$('myDiv').pluck('innerHTML').first().stripTags();
Run Code Online (Sandbox Code Playgroud)

javascript jquery text innerhtml prototypejs

7
推荐指数
1
解决办法
2472
查看次数

将元素添加为字符串与createElement()

为了什么我要完成,我可以使用createElement()innerHTML与一个字符串.

到底哪个真的更快?很长一段时间以来,我一直认为字符串比返回相同结果的内置函数慢得多,但这是真的吗?

我问,因为我已经尝试过createElement(),似乎所有必须添加到每个元素的属性都会减慢速度.不仅如此,它也占用了更多的空间.我有一个循环,根据数组的长度从1-infinity到任何地方,但最好在显示减速迹象之前添加多达50个左右的元素.在我想要创建的这50个元素中,大约有10个元素.所以,总的来说,它实际上创造了大约500个元素.

通过创建具有内置函数的元素,我注意到比平时更快的减速,并且由于我无意中重置该数组(数组是5D并且未在同一脚本中设置),我想知道哪个在完成任务之前,无论是速度还是简单的更好的练习,都是真的更好.

javascript performance innerhtml createelement

7
推荐指数
1
解决办法
4522
查看次数

UTF-8和Javascript

我使用Javascript来获取使用字符集UTF8定义的HTML页面中的数据

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
Run Code Online (Sandbox Code Playgroud)

我的javascript方法加载了一个字符集UTF8

<script type="text/javascript" charset="utf-8" src="../ressources/js/test.js"></script>
Run Code Online (Sandbox Code Playgroud)

但我有一个编码问题,当我用"innerHTML"获取数据

例如:salari s

我错过了什么?

javascript utf-8 innerhtml character-encoding

7
推荐指数
1
解决办法
2万
查看次数

innerHTML适用于IE和Firefox,但不适用于Chrome

数据不会显示在Chrome中,除非我在Chrome中打开IE标签转到该网站然后将其关闭回Chrome(抱歉,如果这没有多大意义).

window.onload = function() {
    var url = "http://----.freeiz.com/gbSales/sales.json";
    var request = new XMLHttpRequest();
    request.open("GET", url);
    request.onload = function () {
        if (request.status == 200) {
            updateSales(request.responseText);
        }
    };
    request.send(null);
}
function updateSales(responseText) { 
    var salesDiv = document.getElementById("sales");
    salesDiv.innerHTML = responseText;
}
Run Code Online (Sandbox Code Playgroud)

我刚刚开始学习JavaScript,所以我真的不太了解它.

javascript google-chrome innerhtml

7
推荐指数
1
解决办法
8790
查看次数

获取整个innerHTML(父+子)

在一个js脚本上,我有一个div,我动态添加了一些孩子.所以从一开始,我就不知道我的div会包含多少个孩子.

当我尝试获取div容器的innerHTML时,我只获取div的html.不是节点的html.

如何通过孩子获得整个组件的innerHTML?

html javascript css for-loop innerhtml

7
推荐指数
2
解决办法
2578
查看次数

innerHTML只插入[object HTMLDivElement]

我想将htmlsnippet插入另一个html元素

我这样试了

HTML

<div class="box1">
    insert this html element
</div>
<div class="box2">
  into this
</div>
Run Code Online (Sandbox Code Playgroud)

js

var box1 = document.querySelectorAll(".box1")[0]; 
var box2 = document.querySelectorAll(".box2")[0];
console.log(box1);
box2.innerHTML = box1;
Run Code Online (Sandbox Code Playgroud)

但它不起作用它只插入[对象HTMLDivElement],如果我看看控制台它输出正确的HTML,我做错了什么?

是的我不想使用$ libary;)

http://codepen.io/destroy90210/pen/MKQOwy

谢谢 ;)

javascript innerhtml

7
推荐指数
1
解决办法
9455
查看次数