我有三件事情正在進行:如何重新綁定jQuery腳本被調用一次後?
我使用此表單發送信息。
<form method="post" id="myForm" action="includes/functions.php">
<input type="hidden" name="group_id" value="$group_id" />
<input type="hidden" name="submit_join"/>
<button class="request" id="sub" name="submit_join">Join</button>
</form>
這個jQuery腳本運行的PHP腳本。
$("#sub").click(function() {
$.post($("#myForm").attr("action"),
$("#myForm :input").serializeArray(),
function(){ $("#sub").html("Applied").fadeIn().addClass("applied").removeClass("request");
});
});
$("#myForm").submit(function() {
return false;
});
這是PHP腳本的作用。 (不是事先準備好的聲明)
if (isset($_POST['submit_join'])) {
//User ID
$user_id = $_SESSION['user_id'];
$group_id = $_POST['group_id'];
$sql="INSERT INTO group_assoc (user_id, group_id, permission, dateTime) VALUES ('$user_id', '$group_id', 0, now())";
if (!mysqli_query($connection, $sql)) {
die('Error: ' . mysqli_error($connection));
}
}
當有人點擊該按鈕一次 - 它工作得很好。
- 它會觸發jQuery腳本
- jQuery的腳本觸發PHP腳本
- PHP的,它的工作
- jQuery的消除類的「要求」,並提出一類「應用」
問題: 當同一用戶點擊另一個按鈕(意味着他們剛點擊的按鈕的副本)時,該頁面忽略jQuer y腳本並執行通常會執行的操作,刷新頁面。這是不必要的過程。
爲什麼有幾種形式,爲什麼幾個按鈕?我正在爲網站中的每個組做一個PHP while循環,並且每個表單都包含一個按鈕(Join),它允許您使用上面的jQuery腳本加入組並更改數據庫上的值。
問:我怎樣才能重新綁定jQuery的腳本,這樣點擊另一個按鈕(<button class="request" id="sub" name="submit_join">Join</button>
)時,它會不忽略jQuery腳本?
我將所有東西都插到原位並重新加載頁面。任何想法爲什麼? –
您是否在html中做過更改 –
確實如此。我調整了一下。我再次將.myForm更改爲#myForm,以及將class =「myForm」更改爲id =「#myForm」,並刷新了屏幕。 當我嘗試使用提供的代碼(未改變)執行它時,它根本沒有做任何事情。 –