0

我正在尝试使用 jquery 滑块变得聪明。

在我的开发中,我有一个选择产品的自动完成字段。在选择时,从数据库中获取价格并填充到 inputlistprice中。

然后我有一个adjustedprice输入和一个discount输入。

我想要的是两个方面。

选项 1:当通过 jquery 从数据库中填充标价时,用户可以在输入中输入他想要的调整adjusted price价格。然后必须对“listprice”输入进行数学运算,并将输入调整discount为等于效果折扣百分比。

选项 2:当通过 jquery 从数据库中填充标价时,用户可以在输入中输入他想要的折扣discount。然后必须对listprice输入进行数学运算并将 调整adjustedprice为正确的值。

这样,用户可以输入折扣或所需价格,然后它会更新其他输入。

我有一个基本的小提琴http://jsfiddle.net/C8X4D/67/。现在listprice可以手动输入以模拟数据库填充。

4

2 回答 2

1

在输入调整后的价格或折扣时,您可以执行以下操作来计算和显示数字:

$("#listprice").keyup(function(){
    $("#adjustedprice").val(this.value);

    $('#adjustedprice').on('keyup', function() {
        var discount = 0;

        var adjustedPrice = $(this).val();
        var listPrice = $("#listprice").val();
        var discount = Math.round((adjustedPrice / listPrice) * 100);

        $('#discount').val(discount);
    });

    $('#discount').on('keyup', function() {
        var adjustedPrice = 0;

        var discount = $(this).val();
        var listPrice = $("#listprice").val();
        var adjustedPrice = Math.round(listPrice * (discount / 100));

        console.log(adjustedPrice);

        $('#adjustedprice').val(adjustedPrice);
    });
});

演示:http: //jsfiddle.net/C8X4D/72/

于 2013-03-28T12:36:01.070 回答
1

您正在使用自动完成选择产品.. 好的,现在您只需在通过自动完成选择产品时传递该产品的 id .. 然后您可以使用 Ajax 获取该特定 ID 的价格

这是HTML代码:

$("#partyName").autocomplete("getPartyAj.php", 
{   
    width: 400,     
    matchContains: true,
    mustMatch: false,
    minChars: 0,
    highlight: false,
    selectFirst: true,
    formatItem: function(data, i, n, value) {   
      return  value.split("|")[0];
  }
}); 
$("#partyName").result(function(event, data, formatted) {
  $("#partyId").val(data[1]);
  balance();
});

function balance()
{
  var dataString = "partyId=" + $('#partyId').val();
  $.ajax({
  type: "GET",
  url: "balanceAj.php",
  data : dataString,
  success:function(data){ 
  $('#partyBalance').val(data);
  }
 });
}

PHP 代码:(getPartyAj.php)

<?php
include("include/config.inc.php");
$q = strtolower($_GET["q"]);
if (!$q) return;
$selectPartyQry = "SELECT partyId,partyName
                     FROM party 
                    WHERE partyName REGEXP '$q'";
$selectPartyQryRes = mysql_query($selectPartyQry);
if(mysql_num_rows($selectPartyQryRes) > 0)
{
  while($partyRow = mysql_fetch_array($selectPartyQryRes)) 
  {
    echo $partyRow['partyName'].'|'.$partyRow['partyId']."\n";
  }
}
else
{
    echo "";
}
?>
于 2013-03-28T12:36:52.890 回答