【问题标题】:IE not accepting some html tagsIE 不接受某些 html 标签
【发布时间】:2013-11-12 16:06:33
【问题描述】:

我在SWITCH 案例中有以下代码:

case 4:
      inp = document.createElement('SELECT');
      inp.id = "usrNameAttrListSel";
       var optStr = "";
         for (var i = 0; i < usrNameAttrFmts.length; i++) {
           optStr += "<option value='"+i+"'>"+usrNameAttrFmts[i].displayStr+"</option>";
           }
        optStr += "<option value='-1'>Other...</option>";
        inp.innerHTML = optStr; 

....

上面的代码在 FF 和 Chrome 上运行良好。

而在 IE 中,功能不正常。

原因:

我添加了一个警报 - alert(inp.innerHTML)。 警报的实际结果应该是:

<option value="0">User-name</option>
<option value="1">Domain\User-name</option>
<option value="2">Domain/User-name</option>
<option value="3">User-name@Domain</option>
<option value="4">SonicWALL Aventail</option>
<option value="-1">Other...</option>

但在 IE 中我得到了,

User-name</option>
<option value="1">Domain\User-name</option>
<option value="2">Domain/User-name</option>
<option value="3">User-name@Domain</option>
<option value="4">SonicWALL Aventail</option>
<option value="-1">Other...</option>

它省略了&lt;option value="0"&gt;。有其他选择吗?

提前致谢。

  • 克里希纳

【问题讨论】:

  • 请使用正确的代码格式!

标签: javascript html


【解决方案1】:

使用这个:

案例4: inp = document.createElement('SELECT'); inp.id = 'usrNameAttrListSel'; for (var i = 0; i

祝你好运。

【讨论】:

    【解决方案2】:

    在您的代码中看不到太多可能出错的地方,但您可以尝试在 HTML 属性中使用双引号:

     optStr += '<option value="' + i + '"> ...
    

    或者

     optStr += "<option value=\""+i+"\">" ...
    

    也许有帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-03-14
      • 2011-08-22
      • 2019-03-12
      • 2019-08-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多