2014-06-25 33 views
0

我有一個表單處理數據並將其放入csv中。用戶可以向表單添加多行以添加新項目。爲了使這個獨特的項目ID增加1(例如項目[0]去項目1基於javascript中的屬性禁用按鈕

窗體工程很好,但我想添加一個刪除/刪除按鈕。它的作品除了我不想刪除最後一個項目。

以下是我正在使用的代碼。如果聲明中斷了添加組員按鈕,我遇到了麻煩。

$('#btnDelelte').click(function() { 
     //remove the last form item 
     $('.questions:last-child').remove(); 

     // if only element that remains as ID == 0, disable the "remove" button 
     if ($('.questions:last-child').attr('id' == 0) 
      $('#btnDelelte').attr('disabled', 'disabled'); 

    }); 

如果您註釋掉if語句,並運行的jsfiddle所有按鈕的工作,但你能刪除最後一個表單區域。

jsfiddle

+0

請在發佈之前檢查您的代碼是否有任何語法錯誤。即使在你的jsfiddle鏈接中 - 語法錯誤就在控制檯中。 – Lix

回答

5

在它說的控制檯:

Uncaught SyntaxError: Unexpected identifier

在錯誤所在,你可以看到屬性的方法不正確關閉展望。

if ($('.questions:last-child').attr('id' == 0) 

應該

if ($('.questions:last-child').attr('id') == 0) 
             ^
+0

感謝您的回覆。我看到語法錯誤。由於ID [0]是較長ID的前綴,因此我也沒有意識到我錯看了它。謝謝您的意見。 –

0
$('#btnDelelte').click(function() {   
     if($('.questions').length > 1){ 
      $('.questions:last-child').remove(); 
     }    
     }); 

小提琴:http://jsfiddle.net/V2TAt/4/

+0

編輯:我應該說的是,如果你添加一組新的問題,刪除它,然後添加另一個它不會導致idname [#]。它只是不斷添加具有相同idname [#]的問題。 –

0

試試這個: -

更換

if ($('.questions:last-child').attr('id' == 0) 
      $('#btnDelelte').attr('disabled', 'disabled'); 

if ($('.questions:last-child select').attr('id') == "town[0]") 
      $('#btnDelelte').attr('disabled', 'disabled'); 
+0

編輯:我應該說的是,如果你添加一組新的問題,刪除它,然後添加另一個它不會煽動idname [#]。它只是不斷添加具有相同idname [#]的問題。 –