0

これは jquery-datepick.js( http://keith-wood.name/datepick.html )のバグかもしれないと思います

状況:

日付ピックが添付された入力テキストフィールドがあります。このフィールドはデフォルトで無効になっています。そのため、datepick も無効になっています (まあ、それで問題ありません)。現在、このフィールドはラジオ ボタンに基づいて有効化/無効化されています。これには jquery を使用していますが、フィールドの「動的ステータス」に従って日付ピックが有効化/無効化されていないことを除いて、正常に動作しています。

私が試したこと

同じラジオボタンに基づいて、日付ピックを手動で有効/無効にしようとしました..次のように:

function enbDsb(id1, id2){
        var target = '#' + id2;
        if($('#' + id1).val() == 'Y'){
            $(target).removeAttr('disabled');
            if($(target).hasClass('hasDatepick')){
            /*alert("enable now");*/
            }
        }else{
            $(target).attr('disabled', true);
            if($(target).hasClass('hasDatepick')){
            /*alert("disable now");*/
            }
        }
    }

ここで、id1=radio_id および id2= テキストフィールド ID (datepick あり)

使った

$(target).datepick({ disable: false });

そしてこれも

$(target).datepick({ disabled: false });

しかし、どれもうまくいきませんでした... :(

$.extend(Datepicker.prototype, {
    dataName: 'datepick',
    markerClass: 'hasDatepick',        
..........rest
}

^^誰かが「datepick」の代わりに「datepicker 」を使用するように頼んだ場合に備えて!

助けてください....ありがとう!

4

1 に答える 1

0

あぁ……

解決しました..!

これを使っただけ

function enbDsb(id1, id2){
        var target = '#' + id2;
        if($('#' + id1).val() == 'Y'){
            $(target).removeAttr('disabled');
            if($(target).hasClass('hasDatepick')){
            $(target).datepick('enable');
            }
        }else{
            $(target).attr('disabled', true);
            if($(target).hasClass('hasDatepick')){
            $(target).datepick('disable');
            }
        }
    }

そしてそれは魅力のように働きました!

于 2012-10-11T11:42:52.727 に答える