0

ユーザーが[追加]ボタンをクリックした後、テキストエリアにコンテンツを追加しようとしていますが、何も起こりません。足りないものはありますか?

以下は、選択したコンテンツを追加するjqueryコードです。

         $(".add").on("click", function(event) {
    console.log("clicked");
    //lets get our Question Text... 
    var theQuestion = $("td:first-child", $(this).parent()).text();
    //the row is present, let's then make sure that the proper cell gets oru data. 
    if ($('.activePlusRow').length > 0) {
        $('.activePlusRow').next('.textAreaQuestion').val(theQuestion);
        $('.activePlusRow').removeClass('activePlusRow');
    }

});

 $(".plusrow").on("click", function(event) {
    //adding a unique class for the purpose of the click. 
    $(this).addClass('activePlusRow');
});

以下はテキストエリアです。

  $('.questionTextArea').each( function() {

    var $this = $(this);
    var $questionText = $("<textarea class='textAreaQuestion'></textarea>").attr('name',$this.attr('name')+"[]")
                   .attr('value',$this.val());


    });

編集:

アプリケーションを使用して、自分の目で確かめることができます。以下はアプリの使い方です:

  1. アプリを開いたら、「グリーンプラス」ボタンをクリックします。モーダルウィンドウが表示されます。
  2. 検索ボックスに「AAA」と入力し、「検索」をクリックします。
  3. 検索結果が表示されます。ここに問題があります。ユーザーが「追加」ボタンをクリックして「質問」を追加すると、モーダルウィンドウが閉じて、上部のテキストエリアに「質問」が追加されますが、これは実行されません。
4

1 に答える 1

0

入力とは異なり、テキストエリアは value 属性を使用してデータを保存しません。これがおそらく attr('value', 'bla') が失敗する理由です。

.val() メソッドは自動的にこれを考慮に入れるため、とにかく機能すると思います。

次のようなことを試してください:

var $questionText = $("<textarea class='textAreaQuestion'></textarea>").attr('name',$this.attr('name')+"[]").val($this.val());

于 2012-05-30T09:42:35.377 に答える