對於jquery Guru的外觀,我在嘗試。我試圖在smarty模板{foreach項目列表}之間添加一個jquery切換,我的代碼很好用,只是它在第一個列表項上起作用,當我點擊列表中的第二,第三個等項時,它不會切換。有什麼建議麼?如何在smarty loop或foreach項目之間添加jquery切換
jQuery代碼
<script>
$(function(){
$("#itm_add").each(function(){
$(this).click(function(e){
e.preventDefault();
$("#itm_add_box").parent("tr").empty();
href=$(this).attr("href");
$(this).closest("tr").next("tr").empty().append('<td colspan="6"><div
id="itm_add_box" data-href="'+href+'">
<input type="text" id="itm_serial" class="input" placeholder="Serial
Number..." />
<input type="text" id="itm_qty" class="input"
placeholder="Quantity..." />
<button class="green" id="itm_submit">Submit</button></div><td>');
$("#itm_add_box button").click(function(e){
e.preventDefault();
href2=$(this).parent("#itm_add_box").attr("data-href");
serial=$(this).parent().find("#itm_serial").val();
qty=$(this).parent().find("#itm_qty").val();
href2=href2+"&item_serial="+serial+"&item_quantity="+qty;
window.location=href2;
});
});
});
});
</script>
Smarty的模板:
<table>
<tr>
<td class="olohead" align="center" width="80">ID</td>
<td class="olohead" align="center">Type</td>
<td class="olohead" align="center">Name</td>
<td class="olohead" align="center">No</td>
<td class="olohead" align="center">Features</td>
</tr>
{foreach from=$customer item=customer}
<td class="olotd4" nowrap align="center">{$customer.ID}</td>
<td class="olotd4" nowrap align="center">{$customer.TYPE}</td>
<td class="olotd4" nowrap > {$customer.NAME} </td>
<td class="olotd4" nowrap > {$customer.NO} </td>
<td class="olotd4" nowrap align="center">
<a id="itm_add">Add</a>
</td>
</tr>
{/foreach}
</table>
還是那句話:這個工程,只是切換僅適用於列出的第一項。有什麼建議麼?
'id =「itm_add」'在你的循環中。這將產生雙重身份證,這是無效的HTML,並使您的JS行爲怪異,因爲它確實。用一堂課代替! – Pevara
感謝PeterVR。上課做了訣竅。這也打開了多行,我怎樣才能啓用只顯示1,像關閉舊的實例{class}。有什麼建議麼? – user3620142