Javascript 如何查找和编辑元素';href值而不丢失查询参数?
如何在包含href attrJavascript 如何查找和编辑元素';href值而不丢失查询参数?,javascript,jquery,html,Javascript,Jquery,Html,如何在包含href attr/dailyTickets/front/user.form.php的页面中找到任何元素,然后将其更改为/dailyTickets/front/contacts.form.php 注意,我希望URL查询参数(id)保持在路径(user.form.php)之后。例如,更改此选项: <a id="User_648_648" href="/dailyTickets/front/user.form.php?id=648">ConseillerUser</a&g
/dailyTickets/front/user.form.php的页面中找到任何元素
,然后将其更改为/dailyTickets/front/contacts.form.php
注意,我希望URL查询参数(id)保持在路径(user.form.php)之后。例如,更改此选项:
<a id="User_648_648" href="/dailyTickets/front/user.form.php?id=648">ConseillerUser</a>
不需要循环,jQuery会为您进行内部循环,只需直接使用选择器即可更改匹配的任何和所有元素:
$('a[href*="dailyTickets/front/user.form.php"]').attr('href', function(i,href) {
return href.replace('user.form.php', 'contacts.form.php');
});
这将完成此操作并保留所有GET参数:
$('a[href*="dailyTickets/front/user.form.php"]').attr('href', function() {
var search = '/dailyTickets/front/user.form.php', // 'user.form.php'
replace = '/dailyTickets/front/contacts.form.php'; // 'contacts.form.php'
return this.href.replace(search, replace);
});
您可以使用不更改主机、查询或哈希
$('a[href*="dailyTickets/front/user.form.php"]').each(function() {
this.pathname = "dailyTickets/front/contacts.form.php"; // don't assign to href
});
// or just
$('a[href*="dailyTickets/front/user.form.php"]').prop("pathname", "dailyTickets/front/contacts.form.php");
$('a[href*="dailyTickets/front/user.form.php"]').attr('href', function() {
var search = '/dailyTickets/front/user.form.php', // 'user.form.php'
replace = '/dailyTickets/front/contacts.form.php'; // 'contacts.form.php'
return this.href.replace(search, replace);
});
$('a[href*="dailyTickets/front/user.form.php"]').each(function() {
this.pathname = "dailyTickets/front/contacts.form.php"; // don't assign to href
});
// or just
$('a[href*="dailyTickets/front/user.form.php"]').prop("pathname", "dailyTickets/front/contacts.form.php");