您可以通过创建一个新的表单元素,将其指向href并在其上调用.submit()来实现.
$('.postlink').click(function() {
var form= document.createElement('form');
form.method= 'post';
form.action= this.protocol+'//'+this.hostname+this.pathname;
$.each(this.search.slice(1).split(/[&;]/g),function() {
var ix= this.indexOf('=');
if (ix===-1) return;
var input= document.createElement('input');
input.type= 'hidden';
input.name= decodeURIComponent(this.slice(0,ix));
input.value= decodeURIComponent(this.slice(ix+1));
form.appendChild(input);
});
document.body.appendChild(form);
form.submit();
return false;
});
或者您可以改为执行AJAX请求,然后根据需要重新加载()页面.
但是,我不确定你为什么要这样做.什么用途是通常POST的链接,除非它不是? (不仅在JS被禁用/不可用时或者当它是搜索引擎时,而且当用户中间点击链接或尝试右键单击 – 将其加入书签或其他任何内容时.)
如果您想要的只是一个提交POST表单的按钮,那么最好真正使用真实表单并提交按钮,然后使用CSS将其重新设置为链接,如果这是您想要的样子.