2

これらの選択フィールドがたくさんあります..

<select name="options[0][option_group_id]" />
<select name="options[1][option_group_id]" />
<select name="options[2][option_group_id]" />
<select name="options[new3][option_group_id]" />

次のような onchange イベントを割り当てたいと思います。ここで、\S はキー 0,1,2,new3... のワイルドカードです。

<script>
$("select[name^='options[\\S*][option_group_id]']").live("change", function(){
  alert('Houston we have contact!');
});
</script>

しかし、うまくいきません。それを機能させるために何を入れますか?

4

2 に答える 2

3

それを 2 つの式に分割するだけです。1 つは名前の先頭用、もう 1 つは末尾用です。

$('select[name^="options"][name$="[option_group_id]"]')

http://jsfiddle.net/zerkms/enZLu/

于 2012-05-26T01:42:24.393 に答える
2
var pattern = /options\[\d{1,}\]\[option_group_id\]/;
$('select').filter(function(){
    return $(this).attr('name').match(pattern) !== null;
}).live(...
于 2012-05-26T01:43:35.050 に答える