将参数添加到链接,然后将结果重定向到amp;在$ _GET中

时间:2012-07-02 11:21:24

标签: jquery

如何使用jquery正确地将参数添加到链接?我现在在这里阅读各种各样的线索,但我无法正常工作。

详细地说,如果用户在点击时点击某个链接,我想获取输入的值,然后将其添加到点击的链接,并使用添加了参数的新网址重定向用户。

一切正常,但是当我在目标网址上使用Php转储$ _GET时,我总是使用amp; parameter_name而不是parameter_name。我做了什么:

$('#add-item-wishlist').bind('click', function(e) {
// get quantity from input
var current_qty = $('.inp-qty').val();

//redirect user
e.preventDefault();
window.location.href = $(this).attr("href") + '&qty=' + current_qty;

});

& qty总是导致amp; qty如果我用php转储,那么php脚本中的检查失败。

//编辑 我可以提一下,我在使用Smarty模板引擎的环境中使用这个片段吗?


固定

我通过将代码移动到HTML头来修复它,将其从Smart html模板文件中删除。看似聪明的搞砸了。

2 个答案:

答案 0 :(得分:0)

尝试使用encodeURI

window.location.href = encodeURI($(this).attr("href") + '&qty=' + current_qty);

所以要正确编码&字符

答案 1 :(得分:0)

我使用一个重定向用户的函数:

function reloadPageAfterSomeAction(value_1, value_2) {
    self.location='somePageIHaveAndRedirectTo.php?value_1=' + value_1 + '&value_2=' + value_2;
}

请注意,您应该在“页面名称”之后以?开头,并且在您传递的每个值之间使用&,因此:

http://www.mypage.com/index.html?value_1=123&value_2=456&value_3=789