2013-01-11 28 views
0

我在一個頁面中有2個上傳按鈕。當我點擊上傳按鈕,選擇文件並上傳它,它會顯示在一個表中,下面的HTML代碼:jQuery在回發後更改類名

<div id="MainContents">   
<p>     
    <input type="hidden" id="89a11bfc-bb33-48f4-a5b4-1e062e8347c0"> 
    <button>Upload files</button> 
    <table cellspacing="1" cellpadding="2" class="UploadedTable"> 
     <tbody> 
      <tr class="Change_me_Row"> 
       <td /> 
       <td /> 
      </tr> 
     </tbody> 
    </table> 
</p>   
</div> 
<div id="MainContents">   
    <p>     
     <input type="hidden" id="53a2a220-4c76-46db-bafa-585c7f0c456b"> 
     <button>Upload files</button> 
     <table cellspacing="1" cellpadding="2" class="UploadedTable"> 
      <tbody> 
       <tr class="Change_me_Row"> 
        <td /> 
        <td /> 
       </tr> 
      </tbody> 
     </table> 
    </p>   
</div> 

我嘗試,我想唯一的名稱更改TR類名每次上傳按鈕。我有這樣的上傳按鈕的OnPostback事件,我想是這樣的:

$(this).find("tr").removeClass("Change_me_Row").addClass("New_Class_Name"); 

$(this).closest("tr").toggleClass("Change_me_Row New_Class_Name"); 

,但他們都沒有工作!

我希望有人能幫助我。謝謝!

+0

回發導致頁面刷新IIRC,如果是這樣,那就是問題所在。 –

回答

0

嘗試去到父,然後找到它的兒童類:

$(this).parent().children('Change_me_Row').toggleClass('Change_me_Row New_Class_Name'); 

同時,確保您的回調函數的上下文是正確的(this指向上傳按鈕)。

+1

謝謝,我用你的建議解決了這個問題,$(this).parent()。parent()。find('tr')。toggleClass('Change_me_Row New_Class_Name'); – Ragnarsson

+0

我很高興我幫助) –