var _txtuserid = document.getElementById("<%=txtuserid.ClientID%>");
_txtuserid.valuejs中采用上面语句获取文本框值,在ie下成功
但在firefox下发生这种情况:打开页面时文本框记忆上次输入内容,清除后重新输入然后通过js取值,结果还是输入以前的
例如打开页面时候文本框显示“12345”,我重新输入abcde后取的值还是12345,这是怎么回事
_txtuserid.valuejs中采用上面语句获取文本框值,在ie下成功
但在firefox下发生这种情况:打开页面时文本框记忆上次输入内容,清除后重新输入然后通过js取值,结果还是输入以前的
例如打开页面时候文本框显示“12345”,我重新输入abcde后取的值还是12345,这是怎么回事
{
var _txtuserid = document.getElementById("<%=txtuserid.ClientID%>");
alert( _txtuserid.value);
}<asp:Button OnClientClick="getData();return false;"
如果这一句你不是放在一个函数里调用执行,
而是直接写在页面里
那就只会在页面加载时执行一次
所以他获取的对象时加载时候的状态
后面你直接获取值的话,就是开始的那个
实际情况就是这样,我每次打开页面,输入框中自动记录上次关闭前输入的值,无论我输什么得到的都是初始值,我再关闭页面后打开,记录的是我最后一次输入的值,这是在firefox下的现象,ie正常
<asp:TextBox id="txt1" runat="server"></asp:TextBox>
var txtValue=document.getElementById("txt1").value;既然是在JS中获取直接取ID,像上面那样不更简单些吗?
<ul style=" margin:0px auto; padding:0; width:100; margin:10px; padding-top :10px;list-style-type:none ; float:left ; text-align:right ">
<li>用户名:</li>
<li>密码:</li>
</ul>
<ul style=" margin:0px auto; padding:0; width:100; margin:10px; padding-top :10px;list-style-type:none ; float:left ">
<li> <asp:TextBox ID="txtuserid" runat="server" ></asp:TextBox>
</li>
<li> <asp:TextBox ID="txtpwd" runat="server" ></asp:TextBox></li>
</ul>
<ul style=" clear:both; margin:0px auto; padding:0; width:100; list-style-type:none ; float:left ">
<li>
<asp:Button ID="btnsubmit" runat="server" Text="确定" OnClientClick="btnlogin_onclick();return false;" /> </li>
</ul>
</div>这是js代码<script type="text/javascript">
function btnlogin_onclick() { var _txtuserid = document.getElementById("<%=txtuserid.ClientID%>");
alert(_txtuserid.value); }</script>
如果这个div不做弹出特效在firefox下就没问题,郁闷
不用blockui弹出,在ie和firefox下取值都没问题,用了blockui,ie没问题,firefox取值错误
看你的代码,应该会想到你的错误所在:你这个取值代码是在页面加载时已运行.
也就说在页面打开时,你还没输入新值,值已取出来了.你换个方式来测试function x()
{
alert(document.getElementById("<%=txtuserid.ClientID%>"));
}<input type="button" value="test" onclick="x()" />