わかりました。私は、divや特定のフォームなど、特定のコンテナ内のすべてのフォーム要素のオブジェクトを最終的に返すことができる再利用可能な関数を自分で作成しようとしています。ただし、実際のコンテナ/フォームを関数に渡して、要素を実行できるようにすることに固執しているようです。
現在私は持っています:
function findAllFormElements(formElem)
{
//detect all form elemets on the page in a given form/container
formObj = {};
$(formElem ':input').each(function(key, val)
{
$(document).append(val+'<br>');
});
console.log(formObj);
}
ここでformElem
、含まれている要素/フォーム要素であることが期待されます。
<div class="something">
<input type="text">
<input type="text">
<input type="text">
<input type="text">
<select>
<option></option>
</select>
<textarea></textarea>
</div>
また
<form class="something">
<input type="text">
<input type="text">
<input type="text">
<input type="text">
<select>
<option></option>
</select>
<textarea></textarea>
</form>
このプロジェクトの一部のフォームには実際にはフォームタグがないため、どちらも長期的には許容可能なコンテナタイプになります。
私の現在の例は、コンソールに物事を吐き出し、それらをコンソールに追加するので、私が言いたいことを正確に描写していませんdocument
が、パラメーターを正しく渡す方法を取得しformElem
たら、すべての入力タイプを取得できるようになります。ストレート<input>
タグから<select>
、までtextarea
は、すべてのフォーム要素のオブジェクトになります。ここで、id / nameはオブジェクトのキーであり、値がある場合は値です。いずれにせよ、このタイプのキャプチャに最適な戦術を見つけようとするだけです。そのため、要素を繰り返し処理して、この情報を取得できます。