在jQuery中if(day = day select)

时间:2011-08-30 01:15:06

标签: jquery date selected

 $('<option></option>')
            .attr('label', day)
            .attr('value', day)
            if(myDate.getDate() == day)
            {
            .attr('selected','selected')    
            }
            .html(day)
            .appendTo(daySelector); 

我想要做的是运行if语句,如果是,则选择该日。

4 个答案:

答案 0 :(得分:3)

您可以使用对象来完成此任务:

$('<option />', {
    selected: myDate.getDate() === day,
    value: day,
    text: day
}).appendTo(daySelector)

以下是该样式的示例:http://jsfiddle.net/9hVeq/

答案 1 :(得分:1)

为什么不先把它放在 var 中呢?或者我错过了什么?

var myOption = $('<option></option>').attr('label', day).attr('value', day); 

if( myDate.getDate() === day )
    myOption.attr('selected', 'selected'); 

myOption.html( day ); 
myOption.appendTo( daySelector );

答案 2 :(得分:0)

attr可以将函数作为第二个参数来确定值应该是什么。

$('<option></option>').attr('label', day)
                      .attr('value', day)
                      .html(day)
                      .appendTo(daySelector)
                      .attr('selected', function() {
                          return (myDate.getDate() == day) ? "selected":null;
                      });

答案 3 :(得分:0)

$('<option></option>')
            .attr('label', day)
            .attr('value', day)
            .attr('selected',(myDate.getDate() == day))
            .html(day)
            .appendTo(daySelector);

应该够了。或者,您可以在包含选项的select元素上设置值:

daySelector.val( day );