0

ajax 呼び出しによって動的に追加された select2 要素があります。select2 i の値が変更される特定の状況では、前の select 2 の選択されたインデックスを取得し、非表示フィールド値に割り当てる必要があります。コードは次のとおりです。

$("#category_selects").on("change", "[id^='category_select_']", function(e) {
    alert("you selected :" + $(this).val());
    if($(this).val() === 'na'){
        console.log($(this).prev());
    }
    else{
        $("#categoryId").val($(this).val());
    }

しかし、console.log($(this).prev()) は、以前に選択された select2 インデックスを提供していません。助けてください。

4

1 に答える 1

0

以前の値を保存しておいて、後でアラートに表示するために使用する方がよいと思います。

HTML :

<select id="fruit">
    <option value="apple">apple</option>
    <option value="banana">banana</option>
    <option value="mango">mango</option>
    <option value="grape">grape</option>
</select>

JS:

var previous;

$("#fruit").focus(function(){
    previous = $(this).val();
});

$("#fruit").change(function(){
    alert(previous);
    previous = $(this).val();
});

http://jsfiddle.net/codeSpy/x5PKf/1144/

于 2013-10-15T12:28:46.383 に答える