text
のような名前の複雑な入力要素がありますproduct[1][combinations][x][price]
。この要素はたくさんありますが、 after[combinations]
と afterの値が異なるだけで名前が異なり[x]
ます。
例えば:
product[1][price]
product[1][combinations][x][price]
product[1][combinations][xx][price]
product[1][combinations][xxx][price]
product[1][combinations][xxxx][price]
product[1][sale_price]
product[1][combinations][x][sale_price]
product[1][combinations][xx][sale_price]
product[1][combinations][xxx][sale_price]
product[1][combinations][xxxx][sale_price]
product[2][price]
product[2][combinations][a][price]
product[2][combinations][aa][price]
product[2][combinations][aaa][price]
product[2][combinations][aaaa][price]
product[2][sale_price]
product[2][combinations][a][sale_price]
product[2][combinations][aa][sale_price]
product[2][combinations][aaa][sale_price]
product[2][combinations][aaaa][sale_price]
上記の値x
、xx
、xxx
、xxxx
およびa
、aa
はaaa
、aaaa
ごとに一意の値を表しますproduct[id]
。各グループの最初の定義 (product[2][sale_price]
たとえば) は、値 i の親または所有者製品を表し、その子 (組み合わせ) にバッチ更新されます。
sale_price
たとえば、保存されている情報の種類に基づいてこれらの要素のグループを見つけて、その値を変更したいと思います。一意の値を考慮する必要がないので[x]
、ワイルドカードを使用できることを望みました。
このようなものが問題を解決することを望みました(例):
$("input[name='product[1][combinations][*][price]'][type='text']").val(0);
ただし、*
実際にはワイルドカードではないので、そのようには使用できません。
私はこのようなことができることを理解していますが、これ0
は単にではなくすべての入力に割り当てられますsale_price
:
$("input[name^='product[1][combinations]'][type='text']").val(0);
$("input[name='product[1][combinations][*][price]'][type='text']").val(0);
this( ) セレクターを適切なワイルドカードに置き換えるにはどうすればよいですか? 可能であれば、名前配列の値を同じ順序に保ちたい