Событие textbox onchange, использующее jquery, вызывает ошибку времени выполнения JScript: «Отчисления» не определены - PullRequest
4 голосов
/ 05 марта 2012

У меня есть запрос относительно вызова jQuery для события onchange textbox.

в моей кодировке я вызываю событие onchange как

<asp:TextBox ID="txtTotalDeductions"  Text="0" runat="server" 
                                                        ClientIDMode="Static"     onChange="Deductions();" ></asp:TextBox>

, и у меня есть два раздела div как

<div id="Total">1000</div>

и

<div id="NetTotal">0</div>

Мне нужно вычислить «NetTotal», вычитая Total - txtTotalDeductions.

, и мой jQuery для удержаний равен

// Вычислитьвычеты.

function Deductions() {


      var result = new Object();

      result.total = $("#Total").html();
      result.totalDeductions = $("#txtTotalDeductions").val();

      result.netTotal = result.total - result.totalDeductions;
      $('#NetTotal').html(result.netTotal);
  }

, и когда я запускаю приложение, появляется сообщение об ошибке типа «Ошибка выполнения Microsoft JScript:« Отчисления »не определены», и ошибка лежит здесь »«

может кто-нибудь помочьменя, пожалуйста ..... спасибо заранее

Ответы [ 2 ]

10 голосов
/ 05 марта 2012

удалить обработчик OnChange

function Deductions() {


      var result = new Object();

      result.total = $("#Total").html();
      result.totalDeductions = $("#txtTotalDeductions").val();

      result.netTotal = result.total - result.totalDeductions;
      $('#NetTotal').html(result.netTotal);
  }

также оберните код внутри обработчика готовности и присоедините обработчик события изменения

$(document).ready(function(){
 //attach with the id od deductions
$("#txtTotalDeductions").bind("change",Deductions);

});
3 голосов
/ 05 марта 2012

Измените свой jScript на это, это поможет:

$(function (){
    $('#txtTotalDeductions').change(function (){
      var total = $("#Total").html();
      var totalDeductions = $("#txtTotalDeductions").val();

      var netTotal = total - totalDeductions;
      $('#NetTotal').html(netTotal);

        });       

});

Вы также можете использовать объект.я удалил его для моего удобства.

edit:

Удалите событие onchange из текстового поля, а также уберите удержание функции.

...