我有一个链接列表,所有链接都转到google maps api。
链接中已将daddr
(目标)参数作为静态参数。我使用Geo-Location查找用户位置,我想在获取数据后将saddr
(源地址)添加到链接中。
所以基本上我需要在指向谷歌地图的所有链接的尾端添加&saddr=50.1234567,-50.03452
之类的内容
所有链接都有一个名为directions-link
来自this page我已经想出了如何改变它们:
$("a.directions-link").attr("href", "http://www.google.com/");
但是我只想将我的值附加到href的末尾而不改变href已经是什么。
我该怎么做?
答案 0 :(得分:134)
var _href = $("a.directions-link").attr("href");
$("a.directions-link").attr("href", _href + '&saddr=50.1234567,-50.03452');
以each()
$("a.directions-link").each(function() {
var $this = $(this);
var _href = $this.attr("href");
$this.attr("href", _href + '&saddr=50.1234567,-50.03452');
});
答案 1 :(得分:35)
jQuery 1.4具有执行此操作的新功能,并且它具有规则。我已经忘记了它的名称,但你这样使用它:
$("a.directions-link").attr("href", function(i, href) {
return href + '?q=testing';
});
它也会遍历所有元素,因此不需要$ .each
答案 2 :(得分:3)
$("a.directions-link").attr("href", $("a.directions-link").attr("href")+"...your additions...");
答案 3 :(得分:0)
以下是我尝试在url中添加包含url中特定字符的参数的内容。
jQuery('a[href*="google.com"]').attr('href', function(i,href) {
//jquery date addition
var requiredDate = new Date();
var numberOfDaysToAdd = 60;
requiredDate.setDate(requiredDate.getDate() + numberOfDaysToAdd);
//var convertedDate = requiredDate.format('d-M-Y');
//var newDate = datepicker.formatDate('yy/mm/dd', requiredDate );
//console.log(requiredDate);
var month = requiredDate.getMonth()+1;
var day = requiredDate.getDate();
var output = requiredDate.getFullYear() + '/' + ((''+month).length<2 ? '0' : '') + month + '/' + ((''+day).length<2 ? '0' : '') + day;
//
工作示例Click