我正在使用一个循环创建HTML,该循环有一个Action列。该列是一个超链接,当用户单击该列时,将调用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函数。
有什么帮助吗?
发布于 2008-12-16 03:31:10
使用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 );
}
});
}
编辑:
如果没有启用javascript,更好的方法可能是(使用GET)为href生成URL,然后使用click处理程序通过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>
发布于 2009-01-05 16:57:43
如果想要执行ajax调用或简单的javascript函数,不要忘了使用返回false来结束函数
如下所示:
function DoAction(id, name)
{
// your code
return false;
}
发布于 2008-12-16 23:19:28
是要将参数传递给另一页还是仅传递给函数?
如果只是函数,你不需要添加tvanfosson添加的$.ajax()。只需添加您的函数内容即可。像这样:
function DoAction (id, name ) {
// ...
// do anything you want here
alert ("id: "+id+" - name: "+name);
//...
}
这将返回一个带有id和name值的警告框。
https://stackoverflow.com/questions/370359
复制相似问题