2015-02-13 3 views
0

У меня есть меню, состоящее из нескольких элементов, и я хочу изменить их цены, когда их переключатели будут нажаты в параметрах. Я использовал следующий код для изменения цены:Стр. Переходы по кнопке jQuery

 $(document).ready(function() { 
      $("input:radio[type=radio]").click(function() { 
       this.preventDefault(); 

       var value = $(this).val(); 
       var id = $(this).attr('id'); 
       var base_price = $(this).attr('base_price'); 

       var arr_rbtn_id = value.split(','); 
       var newprice = parseFloat(arr_rbtn_id[0]) + parseFloat(base_price); 
       $(".pid" + arr_rbtn_id[2]).html(priceFormat(newprice)); 
       return false; 

      }); 
     }); 

Я пытался решить эту проблему, поставив preventdefault, но не использовать, пожалуйста, не поможет,

+0

пожалуйста, укажите Ваш HTML, до сих пор единственная проблема, я вижу, что вы должны иметь вместо этого: '... нажмите (функция (е) {e.preventDefault(); ...' ' – CodeGodie

+1

preventDefault 'не является методом элементов DOM, это метод событий, поэтому' this.preventDefault() 'должен сообщать об ошибке. – Barmar

+0

вы можете добавить скрипт/jsbin? –

ответ

0

До сих пор проблемы я вижу ваш код что у вас неправильный способ вызова вашего радиоэлемента и что this.preventDefault не требуется. Я сделал некоторые изменения, попробую. Если ошибок больше, добавьте некоторые из своих HTML выше, чтобы мы могли вам помочь.

$(document).ready(function() { 
     $("input[type=radio]").click(function() { 
      var value = $(this).val(); 
      var id = $(this).attr('id'); 
      var base_price = $(this).attr('base_price'); 

      var arr_rbtn_id = value.split(','); 
      var newprice = parseFloat(arr_rbtn_id[0]) + parseFloat(base_price); 
      $(".pid" + arr_rbtn_id[2]).html(priceFormat(newprice)); 
      return false; 
     }); 
    }); 
+0

Это не решает проблему, я заметил что-то еще, что проблема возникает в Chrome не в Firefox, какой-нибудь ключ? – ahmed

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