jQuery append()函数在IE11中失败

时间:2019-06-20 06:45:30

标签: javascript jquery

我是Jquery 1.10.2版本。我的要求是在已经存在的xml的特定节点上添加一个xml节点。为此,我正在使用Jquery append()函数。在Chrome,Firefox和IE Edge中运行正常,但在IE11中失败。

在IE11中出现以下错误:

Object doesn't support this property or method

以下是代码

var effectiveDate = document.getElementById("brokerEffDate").value;
var groupSummaryResponse = soapGetGroupSummary.responseXml.cloneNode(true);


 var userProvidedEffDateNode = "<userProvidedEffDate>"+effectiveDate+"</userProvidedEffDate>";

  if (groupSummaryResponse != null){
            $(groupSummaryResponse).find('divisions').append(userProvidedEffDateNode);
            $(groupSummaryResponse).find('division').each(function(){

                if ($(this).children().get(6).innerHTML == ''){
                    $(this).find('GroupExpDt').text('12/31/9999')
                }

            });
 }

要使其在IE11中工作,我需要进行哪些更改?

Node.appendChild在我的情况下也不起作用。

1 个答案:

答案 0 :(得分:1)

两者均应正常工作,但如果IE从本地主机运行,则IE有时会阻止某些内容。

<HTML>
<HEAD>
<script src="https://code.jquery.com/jquery-3.4.1.min.js"></script>
</HEAD>
<BODY>

<input type="text" id="brokerEffDate" value="testing" />

<div id="divData1">test div1 </div>

<div id="divData2">test div2 </div>


<script>
var effectiveDate = document.getElementById("brokerEffDate").value;

var divData2 = document.getElementById("divData2");

var userProvidedEffDateNode = "<div>" + effectiveDate + "</div>";
var ele = document.createElement("div");
ele.innerHTML = effectiveDate;

 $("#divData1").append(userProvidedEffDateNode);
 divData2.appendChild(ele);

</script>
</BODY>
</HTML>

允许被阻止的内容 Allow the blocked content

结果。通常,只有从本地主机运行时,您才会遇到此问题 Result