Tôi muốn nối chuỗi truy vấn vào tất cả các liên kết động trong một trang - để sửa lỗi trong bản phát hành cũ - điều này có thể không?Jquery: Nối chuỗi truy vấn vào tất cả các liên kết
Bất kỳ ý tưởng nào?
Tôi muốn nối chuỗi truy vấn vào tất cả các liên kết động trong một trang - để sửa lỗi trong bản phát hành cũ - điều này có thể không?Jquery: Nối chuỗi truy vấn vào tất cả các liên kết
Bất kỳ ý tưởng nào?
Một cái gì đó như thế này?
var querystring = 'myquerystringtoadd';
$('a').each(function() {
var href = $(this).attr('href');
if (href) {
href += (href.match(/\?/) ? '&' : '?') + querystring;
$(this).attr('href', href);
}
});
này giải pháp với javascript mẹ đẻ:
var querystring = 'yourQueryStringHere=;-)';
document.addEventListener('click', function (e) {
var x = e.originalTarget;
if (x.nodeName === 'A') {
var href = x.getAttribute('href');
if(href) {
href += (/\?/.test(href) ? '&' : '?') + querystring;
x.setAttribute('href', href);
}
}
}, false);
Tốt hơn so với @woz câu trả lời, vì việc kiểm tra cho chuỗi truy vấn hiện có và một trong hai phụ thêm với & hoặc tiền tố với? – jaygooby
@jaygooby. Vâng. Một kiểm tra bổ sung cũng nên được thực hiện cho neo URL ("#"). –
@flem -1: điều này không hoạt động. Tôi nghĩ rằng nó phải là 'href.match (/ \? /)'. – montrealist