在更改我的下拉选择选项时,它会重置另一个选项。 [英] On change of my dropdown select option it reset the other.

查看:131
本文介绍了在更改我的下拉选择选项时,它会重置另一个选项。的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在wordpress网站上创建了一个动态计算器,但当我从下拉列表中更改该值时,它会重置其他值。

我的脚本代码如下。



我尝试过:



I have created a dynamic calculator on my wordpress site but when i change the value from dropdown it reset the other values.
My script code is as following.

What I have tried:

(function ($) {
	
   
	 update_amounts();
    $('.package').change(function() {
        update_amounts();
		 $('#myTable > tbody  > tr > td.numbers-row ').each(function() {
	 $(this).find("input").val();
	 //$(this).find("input").val(1); //val(1) is ued to reset the qty buttons
	 });
    });
	//reset all options 
    $("#reset").on("click", function () {
    $('#package_id option').prop('selected', function() {
        return this.defaultSelected;
    });
	update_amounts();
	 $('#myTable > tbody  > tr > td.numbers-row ').each(function() {
	 $(this).find("input").val(1);
	 });
    });


function update_amounts()
{
    var sum = 0.0;
    $('#myTable > tbody  > tr').each(function() {
       	  var package;
  
       // var qty = $(this).find('option:selected').val();
        var price = $(this).find('.price').val();
		
		if ($(this).find('#package_id').length){
			package =  $(this).find('option:selected').val();
	   if(package=="" || package=="none" ){
       package =  $(this).find('.price').val();
		}
		}
		else{
			 package =  $(this).find('.price').val();
		}
        
        sum += parseInt(package);
		$(this).find('.price').val(package);
        $(this).find('.amount').text(''+package);
    });
    //just update the total to sum  
    $('.total').text(sum);
    
}



}) (jQuery);


 (function ($) {
$( "<div class='inc button'>+</div>" ).insertAfter( ".numbers-row input#french-hens" );
$( "<div class='dec button'>-</div>" ).insertBefore( ".numbers-row input#french-hens" );
  //$(".numbers-row").append('<div class="dec button">-</div>');
function calcProdSubTotal() {
    var sum=0;
       $('#myTable > tbody  > tr').each(function() {
       	  var package; 
  
       // var qty = $(this).find('option:selected').val();
		
			 package =  $(this).find('.amount').text();
		
        
        sum += parseInt(package);
		//alert(sum);
        //$(this).find('.amount').text(''+package);
    });
$('.total').text(sum);
   // $("#product-subtotal").val(CommaFormatted(prodSubTotal));

}
  $(".button").on("click", function() {

    var $button = $(this);
	var sum=0;var product_val;
    var oldValue = $button.parent().find("input").val();
 var total_amt =
            $button.parent().parent()
            .find("td .price")
            .val();
			//alert(total_amt);
    if ($button.text() == "+") {
  	  var newVal = parseFloat(oldValue) + 1;
	  total_cal= newVal * total_amt;
	 product_val=$button.parent().parent()
            .find("td span")
            .text(total_cal);
  	} else {
	   // Don't allow decrementing below zero
      if (oldValue > 0) {
        var newVal = parseFloat(oldValue) - 1;
		total_cal= newVal * total_amt;
	 product_val=$button.parent().parent()
            .find("td span")
            .text(total_cal);
	    } else {
        newVal = 0;
			
      }
	  
	  }
	   var calculate= $button.parent().find("input").val(newVal); 
	   calcProdSubTotal();
	
	   
  });

  
 
  
  
  
  
  
}) (jQuery);

推荐答案

){


update_amounts();
) { update_amounts();


('。package' ).change(function(){
update_amounts();
('.package').change(function() { update_amounts();


('#myTable> tbody> tr> td.numbers-row')。每个(函数) (){
('#myTable > tbody > tr > td.numbers-row ').each(function() {


这篇关于在更改我的下拉选择选项时,它会重置另一个选项。的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆