我在這裏獲得在C#中輸入字段的值的過程:沒有得到HTML輸入型的值在ASP.NET C#代碼隱藏
Get value from input html in codebehind c#
我有一個隱藏的輸入字段我的aspx頁面像這樣:
<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>
:
<input type="hidden" id="lblCountry_val" runat="server" />
凡隱藏字段的值通過jQuery是放
但是當我試圖讓這個在後面的代碼中的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"];
雖然我還沒有一個明確的想法是怎麼做的。
您確定隱藏字段正在BindUserInfo()函數中填充嗎?嘗試在寫入隱藏字段之後放置警報,並檢查值是否存儲在該字段中。 – DipraG
我把:alert(window.strcountry);'腳本標籤內部和'document.getElementById ...'之前,它提供了價值。 – leodeep
這個問題不應該在'window.strcountry'中。由於您的隱藏字段是服務器端控件,因此它的ID在客戶端瀏覽器上呈現時將被修改。因此,在ID上做一個「document.getElementById ...」是行不通的。您需要按照以下第一個答案中所示的相同方式獲取客戶端ID,並將值設置爲'window.strcountry'。之後,執行alert(document.getElementById('<%= lblCountry_val.ClientID%>')。值)'來查看該值是否實際存儲在隱藏字段中。 – DipraG