IE7 中的 Javascript InnerHTML 与 INPUT 标签混淆

标签 javascript jquery html internet-explorer

当我收到包含 input[type=text] 元素的元素的 innerHTML 时,值和 id 周围的语音标记将在 IE7 中被删除,即

<input type="text" id="test" value="test" />

变成:

<input type="text" id=test value=test />

这很好,除了我使用的 JQuery 插件接受 html 段并将 JSON 绑定(bind)到它之外。这意味着如果我有一个模板:

<div id="template"><input type="text"  value="${ValueToBind}" /></div>

当我通过 document.getElementByID("template").innerHTML 检索此内容时,我得到:

<input type="text"  value=${ValueToBind} />

因此,如果我用空格绑定(bind)字符串,即“这是一个测试”,则输出为:

<input type="text"  value=this is a test />

显然,这是无效的 html,并对我的应用程序造成严重破坏。我真正需要做的是按原样检索模板中的 html,而不是让 IE 尝试做任何有用的事情,例如删除“语音标记。

干杯,克里斯。

最佳答案

关于IE7 中的 Javascript InnerHTML 与 INPUT 标签混淆,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1254016/

相关文章:

javascript - 将手机与平板电脑分开(htaccess 或 javascript 或 php)

javascript - 在羽光形态内标记?

javascript - 我们可以使用 Jquery 或 Javascript 从 .js 文件读取/写入 Json 数据吗?

javascript - jQuery 验证后,联系表单不会提交

javascript - 如何在 .run 函数中传递 blob

javascript - 一个函数中的严格模式是否会影响它调用的函数?

javascript - React Native 地理位置变量无法访问

c# - HTML 敏捷包设置

html - CSS float right 不适用于 Firefox 和图像调整大小

javascript - 使用 Parse.com 使用 Javascript 值填充 HTML 表格