使用javascript设置asp.net文本框值

使用javascript设置asp.net文本框值,javascript,asp.net,Javascript,Asp.net,我想使用javascript设置asp.net文本框的值 我的JS代码是: document.getElementById('<%=txtFlag.ClientID %>').value = "Track"; document.getElementById(“”).value=“Track”; 我的文本框是: <asp:TextBox ID="txtFlag" runat="server" Visible="False"></asp:TextBox>

我想使用javascript设置asp.net文本框的值

我的JS代码是:

document.getElementById('<%=txtFlag.ClientID %>').value = "Track";
document.getElementById(“”).value=“Track”;
我的文本框是:

<asp:TextBox ID="txtFlag" runat="server" Visible="False"></asp:TextBox>

但是它给了我一个错误
document.getElementById(…)'为null或者不是对象

我不明白怎么了

请帮忙

document.getElementById('txtFlag').value='Track'

尝试此操作

尝试在文本框中包含
clientMode
属性

<asp:TextBox ID="txtFlag" runat="server" Visible="False" 
                                     ClientIDMode="Static"></asp:TextBox>

解决方案1:

将该文本框设为visible=true,然后重试

当您将控件设置为visible false时,该控件将不会加载到客户端,正如您所知,javascript将在客户端本身执行

解决方案2:


在页面末尾添加此javascript。

在完成文档加载之前调用javascript
。请在
文档上编写javascript代码。准备好这样的函数

 <script src="http://code.jquery.com/jquery-1.9.1.js"></script>
    <script type="text/javascript">

        $(document).ready(function() {
        document.getElementById('<%=txtFlag.ClientID %>').value = "Track";
        });

    </script>

为什么选择
Visible=“false”
??因为我希望在我的代码隐藏文件中包含该值。我不希望它显示在页面上他们必须使用hiddenfield而不是textbox Buddy他不想显示,因此解决方案1在回答时是错误的,他没有提供信息,正如你所说的,hiddenfield可以用来代替textbox.在我的情况下,textbox是可见的,但仍然没有赋值
<asp:TextBox ID="txtFlag" runat="server" style="display:none;"></asp:TextBox>
 <script src="http://code.jquery.com/jquery-1.9.1.js"></script>
    <script type="text/javascript">

        $(document).ready(function() {
        document.getElementById('<%=txtFlag.ClientID %>').value = "Track";
        });

    </script>
<asp:TextBox ID="txtFlag" runat="server" style="display:none;"></asp:TextBox>