我有一个ajax调用,最后我将href
设置为锚标记并想要点击它,但我无法这样做。这是我的代码:
<div>
<a id="hypSendEmail">email</a>
</div>
$("body").on("click", "#btnPopulateEmails", function () {
var $form = $("#btnPopulateEmails").parents('form');
$.ajax({
type: "POST",
url: url,
async: true,
data: $form.serialize()
}).done(function (data) {
var json = data,
obj = JSON.parse(json);
if (obj.MessageType == "success") {
$("#hypSendEmail").attr('href', obj.MessageLink);
$("#hypSendEmail").trigger("click");
//$("#hypSendEmail").click();
$.colorbox.close();
}
if (obj.MessageContent != null) {
//do something else
}
});
return false;
});
我相信我必须以某种方式使用.on
函数来触发点击这个?请帮忙。我的目的是使用mailto&amp; amp填充超链接。自动点击它。我尝试使用Process.Start()
&amp; Response.Redirect()
,但都失败了,所以现在我在这里试试运气。它会在我的锚标记上填充href
标记,但不会单击它。
答案 0 :(得分:0)
看起来可能是Jquery how to trigger click event on href element的副本。
Jquery触发器仅触发处理程序而不是锚标记的本机行为。而不是使用jquery.trigger,使用原生DOM&#34;点击&#34;代替。
更改此行:
$("#hypSendEmail").trigger("click");
改为:
$("#hypSendEmail")[0].click();
希望有所帮助!
答案 1 :(得分:0)
这要归功于Alexander&amp;拉格纳评论:
window.location.href = obj.MessageLink;