問題描述
我正在創建一個帶有 Action 列的循環的 HTML 。該列是超鏈接,當用户單擊調用 JavaScript 函數並傳遞參數時…
例:
<a href="#" OnClick="DoAction(1,'Jose');" > Click </a>
<a href="#" OnClick="DoAction(2,'Juan');" > Click </a>
<a href="#" OnClick="DoAction(3,'Pedro');" > Click </a>
...
<a href="#" OnClick="DoAction(n,'xxx');" > Click </a>
我想要該函數調用具有正確參數的 Ajax jQuery 函數。
任何幫助?
最佳解決方案
使用 POST
function DoAction( id, name )
{
$.ajax({
type: "POST",
url: "someurl.php",
data: "id=" + id + "&name=" + name,
success: function(msg){
alert( "Data Saved: " + msg );
}
});
}
使用 GET
function DoAction( id, name )
{
$.ajax({
type: "GET",
url: "someurl.php",
data: "id=" + id + "&name=" + name,
success: function(msg){
alert( "Data Saved: " + msg );
}
});
}
編輯:
A,也許是更好的方式來做這個工作 (使用 GET) 如果沒有啓用 javascript 將是生成 href 的 URL,然後使用點擊處理程序通過 ajax 來調用該 URL 。
<a href="/someurl.php?id=1&name=Jose" class="ajax-link"> Click </a>
<a href="/someurl.php?id=2&name=Juan" class="ajax-link"> Click </a>
<a href="/someurl.php?id=3&name=Pedro" class="ajax-link"> Click </a>
...
<a href="/someurl.php?id=n&name=xxx" class="ajax-link"> Click </a>
<script type="text/javascript">
$(function() {
$('.ajax-link').click( function() {
$.get( $(this).attr('href'), function(msg) {
alert( "Data Saved: " + msg );
});
return false; // don't follow the link!
});
});
</script>
次佳解決方案
如果你想做一個 ajax 調用或一個簡單的 javascript 函數,不要忘了用 return 返回你的函數
喜歡這個:
function DoAction(id, name)
{
// your code
return false;
}
參考文獻
注:本文內容整合自 Google/Baidu/Bing 輔助翻譯的英文資料結果。如果您對結果不滿意,可以加入我們改善翻譯效果:薇曉朵技術論壇。