-2

この質問をする方法が正確にはわかりません.DOMの用語とその仕組みに関するものです。しかし、基本的には、純粋なクライアント コードを使用して、フォームを送信し、同じページで値を取得しようとしてきました。

だから私はいくつかのハンドラ関数を持つことになりました:

<form onsubmit="readInput(this);">   ...</form>

<script type="text/javascript">
  function readInput(form){...} 
</script>

readInput 関数内には、送信した入力の 1 つの実際の値を示す form.elements[0].value があります。document.getElementBy... も、その値を取得する際に同じように機能します。しかし、jQuery セレクターはその属性を取得しません。

編集:申し訳ありませんが、私は言い回しが本当に苦手です。私の質問はタイトルそのものです。コンセプトがよくわからないので、質問の言い方が正確にわかりません。では、また行きます。

(document.getElementBy...、form.elements[0]、およびセレクターを使用して) すべての値を取得しようとする上記の状況は、readInput 関数内にブレークポイントを設定した場合です。なぜ document.getElementByID が私に値を与え、DOM から要素を取得すると見なされるのか疑問に思っていますが、コードのその時点で、要素を検査したときの「DOM」内の変更は実際の値を保持しません。「Inspect the Element」の要素には、DOM の完全なコンテンツが含まれているとは限りませんか?

4

1 に答える 1

2

jQueryセレクターはそのフォーム値を取得しませんでした

共有していないコードが機能しない理由はわかりませんが、選択した値を読み取るattr('value')代わりに使用していると推測できます。val()

「要素を検査 -> 要素カテゴリ」を実行すると、値が明らかに空になります。これは、DOM が更新されていないことを意味しますか?

いいえ。これは、value 属性が現在の値ではなく初期値を反映していることを意味します (プロパティを通じて公開されます)。value

于 2013-10-26T19:56:12.183 に答える