我找到了很多例子,但我无法弄清楚如何将它应用到我的代码中。我正在添加一个愿望清单按钮,并希望用户点击它,获得一个警报,它已添加到他们的成员页面并继续滚动内容。我知道我需要使用ajax将变量从url发送到javascript,然后发送到带有ajax的php。但是我坚持把这些变量传递给ajax ......可能是因为我还在学习它。在PHP中使用GET很容易获得多个变量,但我无法弄清楚如何在javascript中执行此操作。当然,我不希望页面重新加载。这就是我要传递的内容:
<div><a href='wish_list.php?title=".urlencode($title)."&link=".urlencode($link)."'
onClick='wish(this.href); return false;'>Add to Wish List</a></div>
如何在javascript中设置这些变量?我会使用的Ajax是:
$(function (){
set variables from url
$.ajax({
type: "POST",
url: "wish_list.php",
data: "$link and $title" //Need help with this here
success: function()...
});
});
我需要链接变量保持编码,因为它是一个链接。那么如何拉出标题并链接出url并将其传递给php文件?
答案 0 :(得分:0)
js无法访问php变量。您可以将这些值存储在隐藏的html输入字段中,然后使用jquery获取它。
link = $(#IdHiddenField).val();
然后在ajax函数中:
data: { link: link}
答案 1 :(得分:0)
至少需要javascript和jquery的基础来处理ajax函数。 您传递数据属性中的参数是一个javascript对象。它看起来像这样:
data: {"link":"value of link", "title":"value of title", "numbers_too":1},
您必须将上述属性的值替换为服务器端值。
答案 2 :(得分:0)
您可以使用数据属性将此数据放入标记中:
<div<a class="sender" data-link="<?= $link; ?>" data-title="<?= $title; ?> href="wish_list.php" ... etc.
然后:
$(".data").click(function(e){
type: "POST",
url: $(e).attr("href"),
data: $(e).data()
});
答案 3 :(得分:0)
您可以添加ajax函数以直接使用链接中的“href”。
function wish(link){
$.ajax({
type: "POST",
url: link,
data: '',
success: function()...
});
}
使用您的链接:
<div><a href='wish_list.php?title=".urlencode($title)."&link=".urlencode($link)."'
onClick='wish(this.href); return false;'>Add to Wish List</a></div>
然后,您使用$ _GET从URL获取数据。
答案 4 :(得分:0)
<div><a onClick=wish(urlencode($title),urlencode($link));>Add to Wish List</a></div>
function wish(title,link) {
$.post("wish_list.php", { title: title, link: link }).done(function() {
alert("Added to your member page");
});
}