如何使用jQuery选择框更改url查询

时间:2014-05-21 15:47:47

标签: jquery html

我试图根据用户选择的选择框的选择来更改链接的URL。该链接设置为" admin.php?page = viewdevelopment& developerid ='。$ developer_id。'& plotnumber ="在PHP和我然后希望javascript根据他们在选择框中选择的内容将plotnumber添加到结尾。

我目前的代码是:

$('#plot_number').on('change', function(){
    var plot = $(this).val(); // Get the plot number
    var _href = $('.tochange').attr("href");
    //find the closest .tochange
    var select = $(this).parents('tr').find('.tochange');
    select.attr("href", _href + plot);
});

然而,如果用户将其选择更改两次,则会将其重复到网址中。

知道如何阻止它重复吗?

由于

1 个答案:

答案 0 :(得分:1)

这是你可以做的,在

中定义一个全局变量
$(document).ready(function(){
//define a global variable that stores the original href attribute

orginalHref= $('.tochange').attr("href");

});

使用与上面相同的代码稍作修改:

$('#plot_number').on('change', function(){
    var plot = $(this).val(); // Get the plot number
    //find the closest .tochange
    var select = $(this).parents('tr').find('.tochange');
    select.attr("href", orginalHref + plot);
});

或者您可以将href属性存储在hidden个新元素中,然后从那里获取href

而且,如果您使用的是HTML5 doctype,那么还有另一种解决方法。您可以添加data attrbutes

<a href class="toChange" href-"someURL" data-href="someURL">Some Link</a>

并将其作为

访问
var _href = $('.tochange').attr("data-href"); 

var _href = $('.tochange').data("href");