Javascript jQuery点击操作链接什么都不做?
我有一个按钮,当我点击它,我想它点击一个隐藏的行动链接 单击操作链接没有任何作用。但是,如果我点击我自己的动作链接,它就会工作,只是当我让jquery点击它时它就不工作了Javascript jQuery点击操作链接什么都不做?,javascript,jquery,razor,Javascript,Jquery,Razor,我有一个按钮,当我点击它,我想它点击一个隐藏的行动链接 单击操作链接没有任何作用。但是,如果我点击我自己的动作链接,它就会工作,只是当我让jquery点击它时它就不工作了 function myClickFunction() { $('#CloseLink').click(); //$(document).on("CloseLink", "click", function()) } <input id="btnClose" type="button" value=" Clos
function myClickFunction() {
$('#CloseLink').click();
//$(document).on("CloseLink", "click", function())
}
<input id="btnClose" type="button" value=" Close " onclick="myClickFunction()"/>
<div style="visibility:hidden">
@Html.ActionLink("Close", "APClientIndex", "Home", null, new { id="CloseLink", @class = "btn btn-primary niceButton" })
</div>
函数myClickFunction(){
$(“#CloseLink”)。单击();
//$(文档)。在(“关闭链接”,“单击”,函数())
}
@ActionLink(“Close”、“APClientIndex”、“Home”、null、new{id=“CloseLink”、@class=“btn btn primary niceButton”})
纯html:
<input id="btnClose" type="button" value=" Close " onclick="myClickFunction()">
<div style="visibility:hidden">
<a class="btn btn-primary niceButton" href="/Home/APClientIndex" id="CloseLink">Close</a>
</div>
如果我知道您试图做的是通过javascript启动单击操作 使用
$('#CloseLink')。单击()
您没有触发click事件,您正在将一个操作绑定到click,但是您的内部没有任何类似$('#CloseLink')的函数代码>
因此,如果您想触发click事件,您需要执行$('#CloseLink')。trigger('click')代码>如果您想要模拟用户单击锚定标记,我认为javascript不可能做到这一点
您可以读取锚定标记的href属性并手动更改窗口位置:
function myClickFunction() {
var href = $('#CloseLink').attr("href");
window.location.href = href;
}
这是我在评论部分使用的tewathia的建议
jqueryclick方法触发该元素的onclick事件。为了模拟对锚定标记的单击,您需要运行DOM元素本身的click方法。您可以发布普通HTML而不是模板吗?请尝试:$('#CloseLink')[0]。单击()
调用$('#CloseLink')。单击()
将只触发已附加的click事件处理程序,而不会触发默认浏览器behaviour@f00bar当然,请查看我的编辑。@Pomster jQueryclick
方法触发该元素的onclick
事件。为了模拟对锚定a
标记的单击,您需要运行DOM元素本身的click
方法。。没有参数的click()
实际上是的快捷方式。trigger(“click”)
请参见@ajimenez您可以使用触发单击。click()
,请查看此答案是否错误,首先,因为.click()引发单击事件,并且它对定位标记没有影响。是的,您是对的,它是一个快捷方式,问题是您可以触发单击操作,但此操作不执行重定向。如果要使用重定向,需要更改location.href$('#CloseLink')。单击(function(){window.location.href=$('#CloseLink').attr(“href”);})代码>$(“#CloseLink”)[0]。单击()是我根据tewathia在上面评论部分的建议使用的。
$('#CloseLink')[0].click()