优化jQuery代码?

时间:2011-10-19 12:19:15

标签: jquery optimization

我只是想让我知道如何优化此代码段?

$('#datedebut').change(function() {
    if (Date.parse($('#datefin').val()) - Date.parse($(this).val()) <= 0) {
        alert('Impossible');
    }
});

$('#datefin').change(function() {
    if (Date.parse($(this).val()) - Date.parse($('#datedebut').val()) <= 0) {
        alert('Impossible');
    }
});

我认为它重复同样的事情,但我不知道如何找到优化的东西,当然也很简单。

提前感谢你的建议。

2 个答案:

答案 0 :(得分:3)

如果您不介意再次查看元素,可以直接执行

$('#datedebut, #datefin').change(function() {
    if (Date.parse($('#datefin').val()) - Date.parse($('#datedebut').val()) <= 0) {
        alert('Impossible');
    }
});

当然,您也可以选择一次元素并保留对它们的引用......

然而,在性能方面并非优化。

答案 1 :(得分:0)

你可以尝试这个:

<input type="text" id="datefin" onchange="validateChange()" />
<input type="text" id="datedebut" onchange="validateChange()" />

<script type="text/javascript">
    function validateChange(){
        if (Date.parse($('#datefin').val()) - Date.parse($('#datedebut').val()) <= 0) {
            alert('Impossible');
        }
    });
</script>