我在ASP.NET網站中使用Javascript。我也在代碼中使用updatepanel。 我正在使用隱藏字段,它出現在updatepanel中。隱藏的字段值在UpdatePanel更新中丟失/重置
我想使用document.getelementbyID(hiddenfield);
但每次更新updatepanel時,我都會得到相同的值,如何獲取更新後的值。 謝謝。
我在ASP.NET網站中使用Javascript。我也在代碼中使用updatepanel。 我正在使用隱藏字段,它出現在updatepanel中。隱藏的字段值在UpdatePanel更新中丟失/重置
我想使用document.getelementbyID(hiddenfield);
但每次更新updatepanel時,我都會得到相同的值,如何獲取更新後的值。 謝謝。
我的第一個「預感」是服務器沒有在回發中使用新值。 在每次回發中,整個內容的更新後的UpdatePanel被替換爲 - 這包括上述隱藏字段。
檢查Firebug(或等效)中的網絡請求和/或將調試器附加到ASP.NET進程。第一步是準確確定該值何時/何時不符合預期/期望。
各種框架(例如DevExpress,也許是Telerik)都提供了足夠聰明的自定義隱藏字段控件,可以在回發期間保留其數據。這樣的控制對於創建或模擬來說是相對微不足道的。
一個快速的黑客攻擊,跨異步堅持回發的隱藏字段是將它外任何的UpdatePanel的..因人而異。
您必須使用ClientID property
因爲你的控制包含的Runat =「服務器」
嘗試以下操作:從你的一部分
window.onload = function() {
document.getElementById("myButton").onclick = function() {
var hiddenField = document.getElementById('<%=HiddenField1.ClientID %>');
alert(hiddenField.value);
}
}
這麼少的代碼,並且沒有錯誤就很難說真正正在發生,它可能會有很多錯誤。你必須確保你在頁面加載後使用document.getElementById
,等等......
你能不能請你發佈你的代碼..如果你已經把你的隱藏字段放在updatepanel裏面,那麼在每個帖子後面都會重新初始化它的值。試着將它更新面板外...
如果希望和所有它關係到它可能解決您的錯誤..
可能發佈一些代碼或獲得的jsfiddle? – faino 2013-03-21 17:11:20
您是否驗證過隱藏字段在服務器端更新? – 2013-03-21 17:13:33
我的迴應是在這篇文章的最後一句話 - 但我不完全確定寫的文字意味着我認爲他們的意思。發佈代碼並嘗試更多地展開該問題。 – 2013-03-21 17:31:16