2016-09-12 166 views
-1

當編輯功能被觸發時,id爲「promo1」的td更改其html以顯示選項保存刪除規則並取消。取消是一個帶有名爲「cancel()」的onclick函數的標籤。點擊時,應該將td標籤「promo1」還原爲圖像集。但是,當onclick來自td標籤「promo1」中的取消標籤時,這不起作用,但是當取消按鈕觸發cancel()函數時,它會起作用,這是爲什麼會發生並修復的線索?動態更改td標籤的html

function edit(stringID){ 
 
    console.log (stringID); 
 
    var id = '#promo' + stringID; 
 
    $("#promo1").html("<div style='width:200px'><a onclick='save()' style='margin-right:10px'><b>Save</b></a> <a onclick='save()' style='margin-right:10px'><b>Delete Rule</b></a> <a onclick='cancel()'><b>Cancel</b></a><div>"); 
 
} 
 

 
function cancel() { 
 
    $("#promo1").html("<img src='dist/img/editButton.png'>"); 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 

 
<table> 
 
     <tr style="border-bottom: 1px solid #f4f4f4;"> 
 
      <td data-field="margin">15%</td> 
 
      <td data-field="promo">Promotion Role 1</td> 
 
      <td id="promo1" onclick="edit('1')" style="float:right"><img src="dist/img/editButton.png"></td> 
 
      </tr> 
 
</table> 
 

 
<button onclick="cancel()">Cancel Button</button>

+2

您的html中沒有'id =「promo1」',所以'$('#promo1')'找不到任何東西。 –

+0

'$(「#promo1」)'幸運的是你沒有任何'#promo1'' 8D'另外wwwhy是你給我們展示一些'edit'函數,它在你的[mcve](* not *) –

+0

你的HTML結構中沒有'promo1'ID,並且你沒有調用edit()函數。 – RPichioli

回答

2

我覺得這是你在找什麼:

function edit(stringID){ 
 
    console.log (stringID); 
 
    var id = '#promo' + stringID; 
 
    $("#promo1").html("<div style='width:200px'><a onclick='save()' style='margin-right:10px'><b>Save</b></a> <a onclick='save()' style='margin-right:10px'><b>Delete Rule</b></a> <a onclick='cancel()'><b>Cancel</b></a><div>"); 
 
} 
 

 
function cancel() { 
 
    $("#promo1").html("<img src='dist/img/editButton.png' onclick='edit(1)'>"); 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 

 
<table> 
 
    <tr style="border-bottom: 1px solid #f4f4f4;"> 
 
    <td data-field="margin">15%</td> 
 
    <td data-field="promo">Promotion Role 1</td> 
 
    <td id="promo1" style="float:right"><img src="dist/img/editButton.png" onclick="edit(1)"></td> 
 
    </tr> 
 
</table> 
 

 
<button onclick="cancel()">Cancel Button</button>

使用onclick事件上<img>而不是<td>,也包括onclick='edit(1)'cancel()。其餘的代碼工作正常。

+0

它的工作,謝謝。 – MJJLAM