您沒有提供的「刪除」鏈接,其中ID會被注意到的完整的上下文,所以我會假設的格式,你可以從那裏適應。
<!-- HTML //-->
<!-- Format for Each Element. "123" is the ID here //-->
<div id="element123">
This is Element 123 (ID#123)
<a href="/php/removeSave.php?ID=123">Remove</a>
</div>
<!-- The Form at the Bottom of the Page //-->
<form id="removeSave" method="POST" action="/php/removeSave.php">
<input type="hidden" name="ID" value="" />
</form>
jQuery的段這種方法的
<script type="text/javascript">
$(document).ready(function(){
// Clicks of Links starting with "/php/removeSave.php?ID="
$('a[href^="/php/removeSave.php?ID="]').click(function(e){
// Don't let the Link act as a basic link
e.preventDefault();
// Get the Link HREF attribute
href = $(this).attr('href');
// Derive the Form ID and ID Value
bits = href.match(/^\/php\/([^\.]+)\.php\?ID=(\d+)/);
formID = bits[1];
elementID = bits[2];
// Set the Field Values and Submit the Form
$form = $('#'+formID);
$form.find('input[name="ID"]').val(elementID);
$form.submit();
});
});
</script>
好處?
優雅的降級 - 只要你的PHP腳本也可以處理GET變量,如果這個頁面是從沒有啓用Javascruipt的瀏覽器加載的,或者無法加載jQuery,點擊「刪除」鏈接仍然會執行預期的操作。
機遇AJAX-ification - 而不是.click(function(e){
段內的所有這些其他操作,您可以使用jQuery的$.post()
功能和鏈接的HREF的查詢字符串段直傳球此請求處理程序和操作頁面,而無需做一個完整的頁面重新加載。
給出的鏈接似乎沒有ID。此外,爲了清楚起見,ID不能以數字開頭。 – kojiro 2011-02-28 02:22:06
對不起,添加了鏈接ID。 – AKor 2011-02-28 02:30:31