2013-04-24 6 views
0

Мне нужно показать сообщение подтверждения. Я вызываю метод из события «btnCalculate» clientclick. Он вызывает метод, если он первый раз. но если я нажму кнопку второй раз, метод не будет найден. ниже мой код. Пожалуйста посоветуй. Огромное спасибо.Метод не найден при нажатии кнопки

<asp:Button ID="btnYes" runat="server" OnClick="btnYes_Clicked" /> 
<asp:Button ID="btnCalculate" runat="server" Text="Calculate Claim" OnClientClick="return(cfrm());"/> 

function cfrm() { 
     var consultFee = '0'; 
     consultFee = $('[id$=txtConsultFee]').val(); 

     if (consultFee > 500) { 
      if (confirm('Confirm?')) { 
       $('[id$=btnYes]').click(); 
      } 
     } else { 
      $('[id$=btnYes]').click(); 
     } 
     return false; 
    } 

enter image description here

+0

Откуда вы получаете значение totalgst? Кажется, что вы делаете 'var totalgst = parseFloat (totalgst)' ??? Является ли 'totalgst' глобальным значением? –

+0

моя проблема в том, что если «btnCalculate» щелкнут во второй раз, метод «cfrm()» не найден ... я уверен, что если метод найден, все вычисления и логика верны ... – user1527923

ответ

0

Мне интересно, как вы получаете ваш клик прямо в первый раз, потому что вы не объявили ваш var totalgst вы сразу инициализировать его !!

Вы, возможно, придется инициализировать его первым:

function cfrm(){ 
var totalgst=584; 
totalgst = parseFloat(totalgst).toFixed(4); 
............ other code.... 
} 

Нет необходимости писать OnClientClick="return(cfrm()); вы можете написать OnClientClick="return cfrm();" непосредственно.

Если я делаю простое предупреждение с кодом, кажется, работает каждый раз, вы достаточно проверить функцию JS

+0

спасибо за быстрый ответ .. я попробовал. но с той же проблемой. – user1527923

+0

@ user1527923 Я обновил ответ Если у вас возникли проблемы с кодом js, вам может потребоваться опубликовать ваш html. :) –

+0

Фактически, я удалил некоторые вычисления, поскольку метод слишком длинный ... Я считаю, что если метод jquery найден, он будет работать нормально. моя основная проблема заключается в том, почему метод не может быть найден, если кнопка нажата во второй раз :( – user1527923

0

Использование в качестве

OnClientClick="return cfrm(); 
0

Попробуйте это:

Измените код ASPX как этот

<asp:Button ID="btnCalculate" runat="server" Text="Calculate Claim" OnClientClick="return Confirm();" OnClick="btnYes_Clicked" /> 

И JS кода:

function Confirm() { 
    var consultFee = '0'; 
    consultFee = $('[id$=txtConsultFee]').val(); 

    if (parseInt(consultFee) > 500) { 
     return confirm('Confirm?'); 
    } else { 
     return true; 
    } 
    return false; 
} 
+0

спасибо но все равно получить ошибку – user1527923

+0

Не уверен, что происходит с вашей стороны, но это должно сработать! –

Смежные вопросы