2014-02-17 34 views
0

我是新來的Web開發世界。 我有一個應用程序構建在ASP上。 NET MVC。複選框輸入相同的名稱不fireting javascript

有剃刀

@foreach (var item in Model.Where(m => m.Visible)) 
{ 
<input id="selectedValues" name="selectedValues" type="checkbox" @(item.Selected ? "checked" : "") /> 
} 

,並觸發一個Ajax的動作的JavaScript函數生成的複選框列表:

$('#selectedValues').change(function() { 

var data = {}; 
data[$(this).attr('name')] = $(this).is(':checked'); 

$.ajax({ 
    url: '@Url.Action("action", "controller")', 
    type: 'POST', 
    data: data, 
    success: function (result) { 

    } 
}); 
}); 

在模型中我有一些項目和複選框的列表是建立好的在html上。 問題是隻有第一個複選框觸發控制器上的操作。當我選擇取消選擇它。

其餘的複選框不要觸發該操作。

任何想法如何解決這個問題?非常感謝!

+0

我把相同的ID /名稱接收到控制器中a選擇的列表。 –

+0

刪除ID並使用名稱代替 – mplungjan

+0

ID必須是唯一的。 – Alberto

回答

0

他們可能沒有相同的ID和#是編號,沒有名字

$('input[name="selectedValues"]') 

將更好地工作

或者使用

$(".selectedValues") 

最後使用

<input class="selectedValues" name="selectedValues" 

。在(「點擊」而不是陳ge因爲改變不會在某些瀏覽器中沒有模糊地被觸發

+0

非常感謝!我對這個問題有所瞭解,並且正在發揮作用。 –

相關問題