簡體   English   中英

在ASP.NET c#代碼隱藏中沒有獲得HTML輸入類型的價值

[英]Not getting value of HTML input type in ASP.NET c# code-behind

我在這里獲得了在c#中獲取輸入字段值的過程:

從codebehind c#中的輸入html獲取值

我的aspx頁面中有一個隱藏的輸入字段,如下所示:

<input type="hidden" id="lblCountry_val" runat="server" />

隱藏字段的值通過jquery放置的位置:

<script type="text/javascript">
$(function () {
        BindUserInfo();
    })


function BindUserInfo()
{
 document.getElementById('lblCountry_val').value = window.strcountry;
 }
</script>
<script type="text/javascript" src="http://smart-ip.net/geoip-json?callback=GetUserInfo"></script>

但是當我試圖在代碼后面的Page_Load事件中獲取值時: Response.Write(lblCountry_val.Value);

什么都沒打印出來。 怎么會?

編輯我通過將隱藏的輸入字段更改為不可見的文本框,然后在標記中添加“name”屬性來完成此操作。

<input type="text" id="lblCountry_val" name="lblCountry_val" runat="server" style="display:none" />

並在代碼背后:

var txt=Request.Form["lblCountry_val"];

雖然我不清楚它是如何完成的。

你應該寫

document.getElementById('<%=lblCountry_val.ClientID%>')

發生這種情況是因為在大多數情況下,控件的服務端ID與其clientId不同。 采取它的方法是上述。

第一種方法 - 在aspx中,當您使用Java腳本將值設置為html字段時,Field的值不會出現在文件后面的代碼(aspx.cs)中。 因此,您必須執行其他頁面回發以將值設置為隱藏字段,然后您才能捕獲文件后面的代碼中的值。

第二種方法 - 使用標記,將隱藏的字段數據提交給相關的aspx頁面。然后使用Request.Form [“lblCountry_val”]數組捕獲值。

嘗試這個...

JavaScript

<script>
    $(document).ready(function () {
        var test = "1";
        $("<%=hdn_audio_length.ClientID%>").val(test);
    });
</script>

Html 

<asp:HiddenField runat="server" ID="hdn_audio_length" />
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:Button ID="button1" runat="server" Text="Click" OnClick="button1_Click" />

C#

protected void button1_Click(object sender, EventArgs e)
{
    TextBox1.Text = hdn_audio_length.Value;
}

這是一個在提交點擊時設置隱藏字段的示例。

`<script>
    $(document).ready(function () {
        $("#submit").click(function () {
            $("#<%= ccnum.ClientID%>").val($("#cc-num").val());
            $("#<%= expdate.ClientID%>").val($("#cc-exp").val());
            $("#<%= cvc.ClientID%>").val($("#cc-cvc").val());
        });
    });
</script>`

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM