4

私は現在、DIVからすべての入力要素を取得しようとしています。

$("[required]").each(function() {

});

属性を持つすべての要素を返すこのコードがありrequiredます。

私はその機能の範囲内で、次のeach()ように各アイテムを使用できることを知っています。

$(this)

したがって、以下に示すdiv IDを取得し、次の方法ですべての入力を取得しようとします。

var id = $(this).attr('id');
console.log("### " + id);
console.log($("#" + id + " > :input").length);

これは、そのDIV内に4つのput要素がある場合に0を返します(div内にもテーブルがあります)。

私が理想的にやりたいのは、div内の入力要素ごとに、そのIDを出力することです。

更新しました

<div id="contactAddress" required="true">

 <td>Addres line 1:</td>
 <td colspan="2">
 <input type="text"/>
 </td>
 <td>Addres line 2:</td>
 <td colspan="2">
 <input type="text" />
 </td>
 </tr>
</div>

console.log($(this).html());

nothignを表示しますが、以下のようなものを追加すると...

 <div id="contactAddress" required="true">
 <input type="text" />

そして実行 console.log($(this).html());それはそれがテーブルではないことを示していますか?

JqueryMobileを使用しているアイデア

4

1 に答える 1

10

以下では、div要素内のすべての入力を検索します。次に、この要素のIDのログを残します。

$("div > input").each(function() {
  console.log( $(this).attr("id") );
});

使用できる入力を含むdivIDが必要な場合.parent()

$("input").each(function() {
  console.log( $(this).parent().attr("id") );
});
于 2012-07-19T10:35:39.110 に答える