我在页面上创建了一个按钮,其HTML如下所示:
现在在我的JavaScript中我有一个jQuery,它找到了这样的按钮:
$('.personlistbtn').click(function(e) {
console.log("inside click event of person list");
console.log("provider id was this " + provider_id);
// ?????
});
我想将一些参数附加到我上面发布的href按钮,这样它就可以转到我的Rails应用程序中的新页面,其中包含我传递给它的那些参数,所以希望这样的事情:
<a href="/pharmacy/patients?provider_id=234" >
注意我附上了?provider_id = 234 。 我怎样才能做到这一点?
答案 0 :(得分:5)
假设provider_id
已在代码中的其他位置设置,则应该可以:
$('.personlistbtn a').click(function(e) {
e.preventDefault();
window.location.assign(this.href + '?provider_id=' + provider_id);
});
答案 1 :(得分:1)
您必须编辑href attr:
$('.personlistbtn').on('click', function() {
var $a = $(this).find('a');
var href = $a.attr('href');
$a.attr('href', href + '?provider_id=234');
});
编辑:
单击容器div时,该代码将起作用。如果要在单击锚点时附加参数,则应执行以下操作:
$('.personlistbtn').on('click', 'a', function(e) {
e.preventDefault();
window.location = $(this).attr('href') + '?provider_id=234';
});
答案 2 :(得分:0)
试试这个:
$('.personlistbtn a').click(function (e) {
e.preventDefault();
var provider_id = '?provider_id=234'; // this you already have, I just put it to have a value
var newurl = this.href + '?provider_id=' + provider_id
window.location.assign(newurl);
});
<强> JSFIDDLE 强>