2014-01-30 221 views
-2

我遇到了簡單的jquery問題。這是我的html。爲什麼我的jQuery onChange事件不會觸發?

<label>Select User</label> 
    <span class="field"> 
     <select name="selectUser" id="selectUser"> 
      <option value="">Choose One</option> 
      @foreach (var item in Model.Users) 
      { 
       <option value="@item.Id">@item.UserName</option> 
      } 
     </select> 
    </span> 

下面是腳本:

<script> 
$('#selectUser').change(function() {  
    alert("hello");  
}); 

現在,當我更改選擇元素沒有任何反應的選項?

[編輯]

SelecUser是一個錯字,我固定它仍然沒有警報消息。

+6

因爲id是'selecUser'而不是'selectUser'。 – undefined

+0

您可能必須在onchange更改之前選擇其他元素。 – Blazemonger

回答

2

因爲你的id是selecUser而不是selectUser

試試這個

$('#selecUser').change(function() {  
    alert("hello");  
}); 

你可以試試這個,以及

$('#selecUser').on("change",function() {  
    alert("hello");  
}); 
+0

嘗試兩個,但仍然沒有。 – Zapnologica

+0

'option's不會動態添加,'select'的全部'html'將從ASP服務器返回 – n1k1ch

+0

_「當您動態添加選項」_「時。它是在服務器端生成的,因此不需要使用事件委託,也不是使用'on'方法委派事件的方式。它似乎缺少文檔準備處理程序是問題。 – undefined

0

首先您需要更改ID爲選擇的。還您可能需要編寫documnet代碼準備或使用jquery on.Use:

$(document).on('change','#selecUser',function() {  
alert("hello");  
}); 
+1

@Freak_Droid:你在哪裏看到答案。 –

0

您的實際idid="selecUser"。將其更改爲selectUser

相關問題