2014-07-03 61 views
0

我正在使用與最後一列中的「編輯」措辭具有超鏈接的表。前兩列是兩個文本框,其readonly值設置爲true。訪問td元素中的所有輸入/文本框

當用戶點擊「編輯」鏈接時,我想將readonly屬性更改爲false,並將超鏈接的文字改爲「保存」。

將超鏈接附加click函數後,如何訪問這兩個文本框?我的第一個想法是檢查.parent元素input並從那裏去,但沒有奏效。我也嘗試找closesttd元素和任何input做一個.find,但我無法得到那個工作是(雖然我可以通過inputs被循環正確

這是我到目前爲止有:。

$('.editException').click(function() { 
     if ($(this).text() == 'Save') { 

     } else { 
      //Change text of hyperlink (this is working) 
      $(this).text('Save'); 

      //My two attempts at making the text boxes non-readonly 
      $(this).parent('input').attr('readonly', false); 
      $(this).closest('td').find('input').each(function() { 
       this.readOnly = false; 
      }); 
     }); 
+1

'.parent('input')'沒有任何意義。 ''不能成爲任何東西的父母,因爲它沒有內容。顯示你的HTML。 – Barmar

回答

2

試試這個:

$(this).closest('tr').find('input').attr('readonly', false); 

你需要走了一路的TR,因爲輸入是在不同的列你並不需要。,因爲.attr()適用於所有選定的元素。