0

日付値に CJuiDatePicker 入力フィールドを使用しています。ユーザー入力の後、空白に設定する必要があります。JS ルーチンで次のオプションをすべて使用しましたが、何も機能していないようです。日付フィールドから値を選択できるのに、空白に設定できないのは奇妙です。後続の入力には日付フィールドが必要なため、非表示にすることはできません。

$('#dateFieldId').val('');
$('#dateFieldId').val("");
$('#dateFieldId').val(null);
$('#dateFieldId').val()=null;

以下は、CJuiDatePicker を生成するための私のコード スニペットです。

$this->widget('zii.widgets.jui.CJuiDatePicker', array(
'model'=>$model,
'attribute'=>'history_date',
'options'=>array('changeMonth'=>'true','changeYear'=>'true','yearRange'=>'-70:+0'),             
));

任意のヒント....?

前もって感謝します。

よろしく

ファイサル

4

2 に答える 2

0

コメントで述べたように、要素を動的に追加していました。jQuery イベント ハンドラー (例: .change()) は、動的に追加されたイベントにアタッチされません。

on() と delegated eventsを使用する必要があります。ページ上の永続的な要素を選択します -$('body')通常は機能するはずですが、パフォーマンスに関しては、フォームのラッパーなど、さらに下に何かを選択することをお勧めします。

入力項目には、次のようなものが必要です。

$('<parentSelector>').on('change', '#calendarSelector', function() { 
    $(this).val() = '';
})

ここで、parentSelector は入力要素よりも DOM の上位にあるものであり、ページの読み込み時に存在する要素であり、おそらくフォーム ID などです。

于 2012-10-15T23:40:00.477 に答える
0

なぜこれが機能しないのかわかりませんか?

<script>
    $(function(){
        $("#dateFieldId").change(function(){
            $(this).val("");
        });
    });
</script>

入力をクリアした後に、グラフィカルな日付ピッカーの日付選択が設定されている可能性があります。

または、datepicker API にはコールバック関数があります。ドキュメントを確認してください。after_select またはコールバック関数が利用可能である必要があります。

于 2012-10-15T17:29:56.850 に答える