Javascript 在internet explorer中获取元素时遇到问题--与Chrome、Firefox一起使用

Javascript 在internet explorer中获取元素时遇到问题--与Chrome、Firefox一起使用,javascript,jquery,internet-explorer,Javascript,Jquery,Internet Explorer,我的定义如下: <textarea class="form-control notetext" id="{{this._id}}-notetext" name="notetext">{{this.text}}</textarea> 另外,请注意,id是动态创建的,因此我不能.getElementById(它只返回一个结果而不是一个数组)。我在某处看到一篇文章,它有一个在.getElementById上使用regex的方法,但它也返回null。…结果它毕竟在IE11中工作

我的
定义如下:

<textarea class="form-control notetext" id="{{this._id}}-notetext" name="notetext">{{this.text}}</textarea>

另外,请注意,
id
是动态创建的,因此我不能
.getElementById
(它只返回一个结果而不是一个数组)。我在某处看到一篇文章,它有一个在
.getElementById
上使用regex的方法,但它也返回null。

…结果它毕竟在IE11中工作。我最初使用的是
getElementsbyName
,它在IE11中无法正常工作(取而代之的是ID)。因此,我将其更改为上面列出的变体,它们都给出了相同的错误结果。但在我退出并重新启动浏览器后,代码运行良好。我不确定我是否可以在IE中的某个地方更改设置,这样就不会再发生这种情况了?

尝试在
setTimeout()
回调中使用一些小的超时,比如100。因此
元素
[null]
?@MaratTanalin:好主意。我试过了,但即使等了1000毫秒,它仍然没有定义。@borisdiakur:事实上,它没有定义。你可能想通过w3c验证程序检查你的HTML格式是否正确
$.get('/page/' + Id + '/partial/', function(res) {
    $('#sectional').html(res);

    //variation 1
    var elements = document.getElementsByClassName('notetext');

    //variation 2
    var elements = document.querySelectorAll('.notetext');

    //variation 3
    var elements = document.getElementsByTagName("textarea");
});