1

jqueryダイアログボックスがあります。起動すると、入力フィールドと送信フィールドがいくつか表示されます。その中に、選択した値の関数でチェーンしたいものをテキスト領域にチェーンする選択ドロップダウンがあります。 taxtareaにはカスタムテキストを入力する必要があります。私の問題how to declare a .change event inside of dialog? how to declare <textarea>$variable_text</textarea>

私が試したこと

// Init Dialog
    $('a.open_dialog').click(function() {
        $('<div />').appendTo('body').load($(this).attr('href')).dialog({
            title: $(this).attr('title'),
            modal: true,
            draggable: false,
            width: 800,
            position: 'top'            
        });
        $('select#state').change(function() {
           // assign the value to a variable, so you can test to see if it is working
            var selectVal = $('select#state :selected').val();
            var emailMessage = 'lorem Ipsume dolores macus nacus';
            $("textarea#EmailMessage").val(emailMessage);
            alert( $("textarea#EmailMessage").val(emailMessage));
        });


        return false;
    });
4

1 に答える 1

0

何が機能していないのか、実際には述べていません。私が提案できることの1つは、ドロップダウン要素の「選択された」値を抽出する方法を変更することです。

var selectVal = $('select#state').val();

<select>要素は1つの値しか持てないため、「選択済み」オプションを指定する必要はありません。もちろん、これは複数選択ではないことを前提としています。

もう1つ試してみたいことは、on()関数の代わりに関数を使用するchange()ことです。これらの要素をドキュメントに動的に追加してchange()いる場合、コードが解析されたときに要素がまだページ上になかったため、関数が起動しない可能性があります。

$('select#state').on('change',function() {
  ...
});
于 2012-09-17T11:58:14.073 に答える