0

我找到了很多例子,但我不知道如何将它应用到我的代码中。我正在添加一个愿望清单按钮,并希望用户单击它,收到一个警报,表明它已添加到他们的会员页面并继续滚动浏览内容。我知道我需要使用 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 文件?

4

5 回答 5

0

js 无法访问 php 变量。您可以将这些值存储在隐藏的 html 输入字段中,然后使用 jquery 获取它。

link = $(#IdHiddenField).val();

然后在ajax函数中:

data: { link: link}
于 2013-02-06T14:44:53.987 回答
0

您至少需要 javascript 和 jquery 的基础知识来处理 ajax 函数。您在 data 属性中传递的参数是一个 javascript 对象。它看起来像这样:

data: {"link":"value of link",  "title":"value of title", "numbers_too":1},

您必须将上面这些属性的值替换为您的服务器端值。

于 2013-02-06T14:45:31.960 回答
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()
 });
于 2013-02-06T14:46:19.027 回答
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 获取数据。

于 2013-02-06T14:47:17.787 回答
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");
    });
}
于 2013-02-06T14:50:48.943 回答