第一次火灾事件,然后去网址

时间:2013-06-28 16:45:14

标签: javascript jquery html forms

我的项目中有这样的东西:

<input onchange="doSomething();" .... />

<a href="url" ... ></a>

如果输入字段是聚焦的,我单击“a”链接,浏览器将转到URL,事件onchange仅在此之后触发。但我想首先运行函数“doSomething()”然后才转到url。如何更好地解决?

3 个答案:

答案 0 :(得分:1)

删除内联javascript并使用jQuery。最好是为这些元素添加一些ID或类来定位它们。

$('input').on('change', doSomething);

$('a').on('click', function(e) {
     e.preventDefault();
     doSomething();
     document.location.href = this.href;
});

假设doSomething()不是异步的,因为它会完全不同。

答案 1 :(得分:-1)

您可以使用jQuery(未测试)

执行此类操作
<a href="#">..</a>

$('a').click(function(){
    dosomething();
    $(this).attr('href', 'url');
});

答案 2 :(得分:-1)

而不是onchange事件,请在Input处使用onblur。

<input onblur="doSomething();" type="text" />
<a href="http://www.google.com">Hello</a>

http://jsfiddle.net/Bhaarat/V3wT9测试演示 如果需求只能用javascript满足那么为什么要创建jquery的开销呢? 请让我知道downvote的原因