我有一個表,它的內(nèi)容來自數(shù)據(jù)庫。當我單擊刪除按鈕時,我想使用Ajax刪除該行。實際上,現(xiàn)在它正在工作,但是有一個錯誤,那就是當我單擊按鈕時,所有行都會被刪除,然后如果我刷新,則刪除的行將消失,并顯示其他行。但正如我所說,它需要刷新。任何解決方案將不勝感激。$('.dashboard-subscribe-form').submit(() => { event.preventDefault(); const currentHiddBtn = $('.dash-subscribe-form-btn'); console.log(currentHiddBtn.closest('tr')); const userCaution = confirm('Want to delete this quote?'); if (userCaution) { //If admin insists to delete the row const deleteId = $('.dash-subscribe-form-btn').attr('value'); $.ajax({ type: "POST", url: "delete-subscribe.php", dataType: "json", data: { deleteId: deleteId }, success: (data) => { if (data.code === '200') { console.log('It works!'); currentHiddBtn.closest('tr').css('background', 'tomato'); currentHiddBtn.closest('tr').fadeOut(1200, () => { }); } else if (data.code === '404') { alert('An error occurred!Please try again.'); } } }); }});<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script><tbody> <?php $count = 1; $sqlCommand = "SELECT * FROM `kq0b3_subscribe`"; $sqlCommandPrepare = $pdoObject->prepare($sqlCommand); $sqlCommandPrepare->execute(); while ($result = $sqlCommandPrepare->fetch()) { ?> <tr id="row-<?php echo $result['id']; ?>"> <td class="dashboard-records"> <?php echo $count; ?> </td> <td class="dashboard-records"> <?php echo $result['email']; ?> </td>但新的問題是:我點擊哪個按鈕并不重要,第一行被刪除(當任何按鈕被點擊時,在控制臺中,第一行按鈕的id被打印出來,而不是我被點擊的實際id。我該如何解決這個問題?
1 回答

繁星coding
TA貢獻1797條經(jīng)驗 獲得超4個贊
我認為在這種情況下,主要問題是使用CSS類作為選擇器,并且無論您單擊哪個項目,它似乎都在選擇第一個實例。
導(dǎo)致此問題的代碼是:
const deleteId = $('.dash-subscribe-form-btn').attr('value');
您希望從 從 傳遞的對象獲取目標輸入。event
.submit()
我已經(jīng)創(chuàng)建了一個jsfiddle,其中包含一個可以適應(yīng)您的代碼的示例,但這里是jQuery部分的快速預(yù)覽。
$('.dashboard-subscribe-form').submit((event) => { event.preventDefault() console.log(event.target.elements[0]["value"]) $('#result-from-click').html("Input Value: " + event.target.elements[0]["value"]) })
它正在選擇元素數(shù)組中的第一個元素,即輸入。如果你想要這個按鈕,你可以使用event.target.elements[1]
然后,您還可以使用返回的值刪除具有相同 id 的 ,而不是查找最近的。這可以在呼叫部分完成,而無需刷新。<tr>
success
ajax
- 1 回答
- 0 關(guān)注
- 122 瀏覽
添加回答
舉報
0/150
提交
取消