我有幾個鏈接,我想通過Ajax觸發操作,但我不知道如何繼續這個問題。我曾經爲靜態鏈接解決過這個問題,但我的鏈接是動態的,在不同階段會有不同的鏈接數量。使用動態鏈接觸發阿賈克斯
我有一個index.php文件看起來像這樣:
<script src="../jquery-3.1.0.min.js"></script>
<script>
$(document).ready(function() {
$("#link1").click(function(e) {
e.preventDefault();
$('#result').empty().text('Executing command...');
$('#result').load('ajax.php?op=edit&id=4', function(){
$('#result').before("The server answered:");
$('#result').after("The operation was a success<br>");
}); // end load
}); //end click
}); //end ready()
</script>
<div id='result'></div>
<a id='link1' href='#'>Link 1</a><br>
<a id='link2' href='#'>Link 2</a><br>
<a id='link3' href='#'>Link 3</a><br>
<a id='link4' href='#'>Link 4</a><br>
<a id='link5' href='#'>Link 5</a><br>
<a id='link6' href='#'>Link 6</a><br>
而「Ajax」的文件是這樣的:
<?php
if(isset($_GET['op']) && isset($_GET['id'])) {
$op = $_GET['op'];
$id = $_GET['id'];
switch($op) {
case "edit":
// do operations here
echo $id;
break;
case "doSomethingElse":
// do other operations here
echo $id;
break;
}
}
?>
所以我現在用奮鬥是:我如何解決這個問題,所以我不必定義jquery ready()函數中的每個鏈接?
編輯: 基本上我需要在ajax.php文件中觸發一個操作,具體取決於我點擊的鏈接。
任何想法?
這是一個有點混亂,你只是問如何連接標識加入URL,或如何使事件處理程序使用動態元素*(事件委託)*? – adeneo
您需要退後一步,並注意按鈕點擊操作之間的共同邏輯是什麼,然後編寫代碼以重複該操作。您沒有真正提供足夠的信息讓某人幫助您 - 我們需要查看您發送的兩個請求的示例,以瞭解它們之間的相同/不同之處 –
對不起,我想我可以添加一個問題最後問兩個問題。我會繼續並將其刪除。 – DaveLar