jQuery追加在IE和Edge中删除字符

使用JQuery,当我遍历数组并将值附加到UL时,它在Chrome和Firefox中运行良好。在IE和Edge中,如果值以数字开头,后跟破折号或下划线,则它将截断该值。


var listItems = $('#list1');


var result = ['1-2-3', '1_2_3', 'a-b-c', 'a_b_c'];


$.each(result, function(key, value) {

  listItems.append($('<li/>', {

    value: value,

    text: value

  }))

});

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<ul id="list1"></ul>

预期结果:


<ul>

<li value="1-2-3">1-2-3</li>

<li value="1_2_3">1_2_3</li>

<li value="a-b-c">a-b-c</li>

<li value="a_b_c">a_b_c</li>

</ul>

实际结果:


<ul>

<li value="1">1-2-3</li>

<li value="1">1_2_3</li>

<li value="a-b-c">a-b-c</li>

<li value="a_b_c">a_b_c</li>

</ul>


芜湖不芜
浏览 157回答 2
2回答

繁星淼淼

作为参考,我结束了向LI添加数据值属性的工作,而不是使用jQuery.data()$.each(result, function (key, value) {&nbsp; &nbsp; listItems.append($('<li/>', {&nbsp; &nbsp; &nbsp; text: value&nbsp; &nbsp; }).attr("data-value", value))&nbsp; });再次感谢您的帮助!
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript