1 回答

TA貢獻1848條經驗 獲得超6個贊
所以,你愿意在你的javascript代碼中使用一個方法,但它不適合你。它沒有擊中它的背后可能有很多原因,我會在這里寫一些可能的原因及其各自可能的解決方案。
原因:
由于您使用 jQuery 將下拉列表與更改事件綁定,我懷疑您的 jQuery 是否被正確引用。
解決方案:
轉到瀏覽器的開發工具選項console卡 ( CTRL++ ) 并查看是否存在未加載 jQuery 的任何錯誤,如果是則修復它SHIFT。I
原因:
在綁定事件#之前,您沒有指定 css 選擇器。id
解決方案:
$(function () {
? ?$(document.body).on('change', '#_ddlMode', function () {
? ? ? ?var _index = $("select[id='_ddlMode'] option:selected").index();
? ? ? ?SetModes(_txtBank, _txtZip, _index);
? ?});
?});
原因:
您的事件未綁定到所需的控件。這可能非常特定于ASP.NETWeb 窗體,因為您在構建 Web 應用程序時可能會遇到它。
因此,從技術上講,ASP.NET可以在編譯控件時修改控件的 ID,這可能是未命中該方法的可能原因。
例如,如果您有一個ContentPlaceHolder帶有一個idofcph_1并且其中有標記作為您的子頁面,那么ASP.NET將將該 id 與您的每個嵌套服務器控件連接起來。因此,如果您在該內容占位符中有一個textbox帶有一個idof ,則在瀏覽該頁面時它會被修改為。tb1cph1_tb1
解決方案:
借助此語法 ( <%%>) 綁定您的事件,如下所示:
$(function () {
? ?$(document.body).on('change', '#<%= _ddlMode.ClientID %>', function () {
? ? ? ?var _index = $("select[id='<%= _ddlMode.ClientID %>'] option:selected").index();
? ? ? ?SetModes(_txtBank, _txtZip, _index);
? ?});
?});
看看您是否可以使用這些解決方案解決問題。
添加回答
舉報