2012-03-02 80 views
0

我怎樣才能調用從一個隱藏字段從調用隱藏字段JavaScript函數

<asp:HiddenField ID="hdnfield" onChange="callJsFunction()" runat="server" /> 

等什麼可以替代的onChange一個JavaScript函數?因爲hiddenfield不到風度支持onTextChanged ...

+2

您是否期望'onChange()'發生隱藏字段。 – gideon 2012-03-02 09:21:10

+2

什麼客戶端事件使隱藏域更改? – 2012-03-02 09:21:43

+0

[HTML Hidden控件是否有任何事件?像onchange或東西?](http://stackoverflow.com/questions/1003053/does-html-hidden-control-have-any-events-like-onchange-or-something)。另請參閱相關問題:http://stackoverflow.com/questions/2026704/what-event-can-be-captured-when-an-html-hidden-input-value-is-set-changed。簡短的回答是不! – VinayC 2012-03-02 09:35:10

回答

1

爲什麼你不能使用

$('#<% hdnfield.Id %>').change(function() { alert("Changed"); }) 
0

這是棘手隱藏下地幹活。試試我寫的這個傾聽者。它在很多不同的情況下適用於我。我使用jQuery,但你不必。這個人正在傾聽價值變化,但你可以聽任何屬性。

比方說您已經隱藏輸入一些初始值:下面

<input id="change" type="hidden" value="SomeValue" /> 

腳本將檢查每2個SES和警告更改該值:下面

// Set empty global var for input value 
inputValue = ''; 

    listenOnChange = function() { 

    // Check for new value if any 
    checkForNewInputValue = $('#change').val(); 

    if (inputValue == checkForNewInputValue) { 

     // Check after 2 sec for change 
     setTimeout("listenOnChange()",2000); 

    } else { 

     // Replace with new value 
     inputValue = checkForNewInputValue; 

     // Check after 2 sec for change 
     setTimeout("listenOnChange()",2000); 

     alert('IT WORKS'); 

    } 
} 
$(document).ready(
    inputValue = $('#change').val(), // Set Initial Value 
    listenOnChange() // Start listener 
); 

按鈕會改變這個價值。複製,粘貼並查看它是如何工作的。

<button onclick="$('#change').val('1234566');">CHANGE</button>