【发布时间】:2016-07-05 22:48:14
【问题描述】:
我使用下面的代码单击将<a> href 属性更改为重定向,
我不想使用window.location、window.open、
的原因
因为如果我使用这种方法,当用户单击按钮时,他们仍然可以选择是否按下键盘在选项卡中打开新网址
例如a 它照常工作,但b 只更改href
不重定向,为什么?以及如何解决?
<div class="submit">
<a>submit</a>
</div>
一个
$('.submit').on('click', function() {
var submit = $(this);
// var url = ...;
$(submit).find('a').attr('href', url);
});
b
$('.submit').on('click', function() {
var submit = $(this);
requestPost().then(function(response) {
// ...
// var url = ...;
$(submit).find('a').attr('href', url);
});
});
【问题讨论】:
-
“在新标签页中打开”是重要的浏览器功能。除非您有非常充分的理由,否则您不应该从您的用户那里抢夺它。
-
??是的,我同意这很重要,这就是我问这个问题的原因。尝试找到方法,我可以使用 ajax 发布数据,用户仍然可以选择是否使用选项卡打开,而不仅仅是使用 window.open 并为用户决定。
标签: javascript jquery promise