一旦两个输入字段都具有jQuery值,就运行函数

时间:2014-07-29 14:20:16

标签: javascript jquery html

在我的页面上,我有2个输入字段,一个开头和一个结尾。

我有一个在我的第二个输入字段中的keyup上运行的函数 - 无论第一个字段是否为空,这都会运行。我还需要填充其中一个或我的输入字段的按钮。

我要问的是,有没有办法添加某种类型的侦听器,以便一旦两个字段都包含我的函数将运行的值?

希望能更好地解释一下......

http://jsfiddle.net/Zn6UR/1/

代码

var timer;

function CalculateRoutes(){
    alert('Done!');
}

$( '.end' ).keyup(keyup);

function keyup() {
    clearTimeout(timer);
    timer = setTimeout(CalculateRoutes,500);
}

$('.first').click(function(e){
    $('.start').val('Location1');
    e,preventDefault();
});

$('.second').click(function(e){
    $('.end').val('Location1');
    e,preventDefault();
});

1 个答案:

答案 0 :(得分:3)

演示:http://jsfiddle.net/robschmuecker/Zn6UR/3/

function CalculateRoutes() {
    alert('Done!');
}

function bothHaveValues() {
    if ($('.start').val() != '' && $('.end').val() != '') {
        CalculateRoutes();
    }
}

$('.start, .end').keyup(keyup);

function keyup() {
    bothHaveValues()
}

$('.first').click(function (e) {
    $('.start').val('Location1');
    e.preventDefault();
    bothHaveValues()
});

$('.second').click(function (e) {
    $('.end').val('Location1');
    e.preventDefault();
    bothHaveValues()
});