2011-06-16 117 views
1

在此的jsfiddle如何解決這個錯誤?

http://jsfiddle.net/littlesandra88/jy93J/1/

有我的問題是,點擊保存時,它會替換「詳細信息」和「0」。

如果我評論這一行

$(this).prev().html(order); 

它不會做任何更長的時間,但隨後排序不起作用。嘗試點擊「簽名」進行排序。

當保存單擊此執行

$('form').live('submit', function() { 
    return false; 
}); 

是什麼原因導致 「詳細信息」,以 「0」?

如何解決這個問題,排序仍然有效?

回答

2

選擇器'#accTable input包括<input value="Save" type="submit">

:checkbox添加到選擇器以僅選擇input是複選框的元素。

1

我更新了你的小提琴來解決這個問題。

在點擊功能中,由於您剛輸入,因此您既包含按鈕又包含複選框。一旦你追加了:複選框,它會停止執行保存按鈕上的事件,這是將0放在元素之前的元素(詳細信息鏈接)。

$('#accTable input:checkbox').click(function() { 
    var order = this.checked ? '1' : '0'; 
    $(this).prev().html(order); 

    $(this).parents("table").trigger("update"); 
}); 

http://jsfiddle.net/HH8nk/1/

1

您都指向所有的HTML輸入元素,在這裏:保存按鈕,複選框。

變化

$('#accTable input').click(function() { 

$('#accTable input[type=checkbox]').click(function() { 

,它會工作得很好。