0

onchange イベントの後に自動生成されたドロップダウン メニューの以前の値を取得するにはどうすればよいですか? 例

<select class="form-control" name="Diabetes_UK_3147" id="Diabetes_UK_3147" onchange="return verifyUpdateResponseGross(this);">
  <option value="Yes">Yes</option>
  <option value="Possibly">Possibly</option>
  <option value="">N/A</option>
</select>

そして私はこの機能を持っています

function verifyUpdateResponseGross(val)
{
  var updated_response = val.value;
  var colheader = val.name
  var before_gross = $('#new_gross').val(); 

  $.ajax({
  url: "qa/api/crm/getquestion", 
  type: 'GET',
  data: {'colheader':colheader},
  success: function(result){
    // var costperlead = result;
    // if(updated_response != "")
    // {
    //  var new_gross_amount = parseFloat(before_gross) + parseFloat(costperlead);
    //  $('#new_gross').val(new_gross_amount);
    // }
    // else
    // {
    //  var new_gross_amount = parseFloat(before_gross) - parseFloat(costperlead);
    //  $('#new_gross').val(new_gross_amount);
    // }
    // console.log(costperlead);
   }});
}

以前の値を取得したい理由は、ドロップダウン値が空 (N/A) の場合は何らかの操作を実行する必要があり、値が空でない場合は別の操作を実行する必要があることを確認する必要があるためです。値が空ではなく、前の値と同じである場合は、何もしません。

それらの操作はコメントのものです。ありがとう

更新ID と名前は自動生成されます。それが私が持っている理由です

onchange="return verifyUpdateResponseGross(this);"

これにより、変更が処理され、必要な操作が行われます。

これは自動生成されたものです

ここに画像の説明を入力

4

4 に答える 4

3

jquery でそれを行う最良の方法:

  $(document).ready(function(){
        var previous;
         $("#Diabetes_UK_3147").on("focus click",function () {
            previous = this.value; // Old vaue 

        }).change(function() {
        var value =  this.value; // New Value
          $('span').text('Old Value : '+previous+' New Value : '+value)
        });

    })

ここでフィドルhttp://jsfiddle.net/Laa2hL3b/

編集済み:自動生成ドロップダウンで、「myselectbox」などのカスタムクラスを追加できます

<select class="form-control  myselectbox"

ここで変更を加えます

  $(".myselectbox").on(/* other code remain same */
于 2015-09-23T11:26:18.420 に答える