2011-06-21 9 views
0

テキストボックスから値を取得するのに問題があります。従来のjavascriptのgetElementByNameはエラーを返します:undefined。私はselectを使って他の例でjQueryを使用することができました。しかし、入力タグについてどこでも参照を見つけることはできません。この行は、構文エラーを示しています構文エラー - テキストボックスの値を取得する方法

var total = = $('input[name='+formQty+'] :text').val(); 

テキストボックスの値/テキストを選ぶためのjQueryのは何ですか?

答えて

1

var total = $('input[name='+formQty+'] :text').val(); 

それはあなたがロードされたDOMからそれを呼び出していることを確認してくださいinputタグのID属性を固執し、この

var total = $('#myInputId').val(); 

を使用する方が簡単もあるかもしれませんあなたの質問セレクタが間違っていると私は理解しています。

'input[name='+formQty+']:text':text現在の入力の下のテキスト要素を選択しようとしているため、何も表示されません。 :textを取り除くこともでき、名前に基づいて要素を選択するだけです。 .val()は、入力要素を適切に選択した場合に機能します。

また、関数呼び出しなしで$( '...')メソッドを実行し、返される要素を確認するだけでこれをデバッグする必要があります。

+0

ありがとう@mistagrooves。 .val()はテキストなしで処理されました:var total = $( 'input [name =' + formQty + ']')。今私はそこに別の価値を提示するという挑戦をしています。私は$( 'input [name =' + formQty + ']')を使用しようとしました。とdocument.MainForm.elements ["formQty"]。値=合計;どちらもうまくいきませんでした。これには別の方法がありますか? – Alexica

+0

'.val(sum)'を使うことができます。 – mistagrooves

+0

うわー、うまくいきました。ありがとう@mistagrooves。 – Alexica

2

2つの等号があります。から

$(function() { 
    var total = $('#myInputId').val(); 
}); 
+0

感謝@Daniel。私はそれを修正しましたが、それでも "未定義の"エラーを返します... – Alexica

+0

残念ながら要素のIDは持っていません。 – Alexica

+0

あなたは1つを設定できますか? –

0

これをgetElementByName()と一緒に使用する問題については、おそらくその方法が実際にgetElementsByName()です(複数の要素に注意してください)。配列の構文でアクセス可能な、指定された名前を持つすべての要素のリストを返します。一致する要素が1つしかない場合でも、リストは1つしかありません。

あなたはこれを行うことができ、指定された名前と正確に一つの要素があると確信している場合:

var elementValue = document.getElementsByName(name)[0].value; 
関連する問題