Js获取不到textarea 值ID 解决办法
在用.net开发网页的时候遇到使用JS不能正常取到textarea的值,一通折腾,百度解决不了问题。没办法在chrome中查看源码并准备开启调试,以查找问题原因。
在VS中小子编写的代码如下:
<textarea id="txta_ContainID" class="form-control " rows="3" aria-disabled="false" readonly="readonly" placeholder="显示所有添加的ContainID" runat="server"></textarea>
在chrome中发现textarea的ID值并不是VS中的txta_ContainID,而是如下:
也就是说在JS中还使用VS中指定的ID,肯定是找不到的。
这时使用chrome中源码显示的ID,用
document.getElementById("MainContent_txta_ContainID").value
就能取到textarea的值了。
也就是说在textarea在加上runat="server"后,其由服务器解析后发回浏览器的ID并不是原来编码时的ID。在.net下,如果使用了母版页,加上runat="server"属性后都可能有这个问题(未了避免套用母版页后,出现相同ID)。
input gridview textarea等等所有控件,在实际使用中都可能存在此问题。
赞 (0)