问题描述
我正在创建一个带有 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 辅助翻译的英文资料结果。如果您对结果不满意,可以加入我们改善翻译效果:薇晓朵技术论坛。