Jquery代码清理

时间:2012-09-19 06:14:53

标签: jquery

有没有办法不必写'两次' 请参阅下文,其中#start_date和#end_date的功能完全相同。

<script type="text/javascript">

    jQuery(function($){

        $("#start_date").datepicker({
            showButtonPanel: true,
            minDate: 1,
            dateFormat: 'dd/mm/yy'
        });

        $("#end_date").datepicker({
            showButtonPanel: true,
            minDate: 1,
            dateFormat: 'dd/mm/yy'
        });     

    });

</script>

3 个答案:

答案 0 :(得分:6)

jQuery(function($){

    $("#start_date, #end_date").datepicker({
        showButtonPanel: true,
        minDate: 1,
        dateFormat: 'dd/mm/yy'
    }); 

});

http://jsfiddle.net/LWQCE/

或者使用课程:

(function($){

    $(".myDatePickers").datepicker({
        showButtonPanel: true,
        minDate: 1,
        dateFormat: 'dd/mm/yy'
    }); 

});

答案 1 :(得分:0)

您可以在jQuery中使用逗号来选择多个ID。

<script type="text/javascript">

    jQuery(function($){

        $("#start_date, #end_date").datepicker({
            showButtonPanel: true,
            minDate: 1,
            dateFormat: 'dd/mm/yy'
        }); 

    });

</script>

答案 2 :(得分:-2)

我不担心这些少量的代码重复。另外,也许你在一周内决定更改其中一个属性,那么你会很高兴不会重构太多。

特别是在这个非常简单(并且非常容易阅读)的代码示例中,我很想应用Rule of Three重构经验法则,该经验法则规定“代码可以复制一次,但是当相同时代码使用了三次,应该将其提取到一个新的过程“。