2017-04-06 4 views
0

私はこのラインのためのコンソールエラーを受けています:ここでjQueryの無効左側エラー

$("#note" + noteCount).val() = note; 

は、フル機能である:

function addNotes() { 
    noteCount++; 
    var note = $("#noteInput").val(); 
    console.log("Note: " + note); 
    console.log("Note Count: " + noteCount); 
    var display = document.createElement("div"); 
    document.getElementById("displayContainer").appendChild(display); 
    display.className = "noteDisplay"; 
    display.id = "note" + noteCount; 
    $("#note" + noteCount).val() = note; 
} 

あなたは、私が作成しています見ることができるようにid 'note' + note countでdivを指定していますが、値を変更するにはどのように選択するのか分かりません。

+0

の可能性のある重複した[にReferenceError:割り当てに無効な左辺](http://stackoverflow.com/questions/18597667/referenceerror-invalid-left-hand -side-in-assignment) –

答えて

2

ベター:

$("#note" + noteCount).text(note); 

あなたはjQueryを使用してHTMLを作成して使用しているとして、それ

var display = $("<div>", { 
    "text" : note, 
    "id" : "note" + noteCount, 
    "class" : "noteDisplay"  
}); 

display.appendTo('#displayContainer'); 
+2

これは 'div'要素であることがよく分かりました。 'createElement' /' appendChild'の醜さを取り除くロジックを改善する答えを広げたいと思います。 –

1

は単に

$("#note" + noteCount).val(note); 

val呼び出しは、あなたが別の値で上書きすることができない値を返してみてください。値が既に関数呼び出しによって計算されるので、左側は変数ではなく、値は、あなたが値

1

あなたの方法に値を割り当てることはできませんので、

val = note; //has a different meaning, still not correct for your scenario 

しかし

val() = note; //not allowed 

値を割り当てるのが間違っています。 ;あなたはjQueryを使用するときは、val()内の値を置くべきJQUERY DOCS

+0

「このメソッドは引数を受け付けません」というメッセージが表示されていたので、私はドキュメントを見ると混乱しました。でもありがとう:) – Xander

+0

いいえ問題::)喜んで助けてください –

+0

私はちょうど2番目のはいになります:)私はあなたが正しいと確信していますが、私はそれをテストするときに表示されていません。 divはIDとクラス名で作成されていますが、クラスは有効ではありません – Xander

1

を参照してください

$("#note" + noteCount).val(note) ; 

プロパティではありません、その機能ので val関数の引数として渡す必要があり、

あなたは DIVとして DIV

var display = document.createElement("div"); 
display.id = "note" + noteCount; 
display.textContent = note; 

OR、.text()を作成しているようvalue性質を持っていて、メソッド呼び出しのパラメータとして、それを提供する必要はありませんtextContentプロパティを使用

$("#note" + noteCount).val(note); 
関連する問題