两个 ajax 表单不能同时工作



我有两个盒子,一个盒子叫最小量,另一个叫最大量。当您在最大金额中输入 100 时,它会找到低于 100 美元的产品。但是,当您在最低金额中输入 lets 稍后说 50 美元时,除非您刷新页面,否则它将无法正常工作

我的问题是,我

如何使这个脚本适用于我的两个盒子,就好像我为ajax使用一个盒子一样,其他的盒子如果不刷新就不起作用。

如果我听起来有点混乱,我很抱歉,但这是我到目前为止尝试过的,但它仍然不起作用。

   <script>
    //on keyup, start the countdown
    $('#maxprice').keyup(function(){
       doneTyping();
    });
    function doneTyping() {
       var value = $('#maxprice').val();
       $.post("script/limitedfetcher/maxprice.php",
        {
            name: value
        },
        function(data, status){
            $("#loader").empty();
            $('#loader').html(data);
        });

    }
    </script>

    <script>
    $('#minprice').keyup(function(){
       doneTyping();
    });
    function doneTyping() {
       var value = $('#minprice').val();
       $.post("script/limitedfetcher/minprice.php",
        {
            name: value
        },
        function(data, status){
            $("#loader").empty();
            $('#loader').html(data);
        });

    }
    </script>

使用 this !!

将发生键控的元素传递给函数。

然后,根据两者中的哪一个...决定网址...函数的其余部分是相同的,无需定义两次。

<script>
//on keyup, start the countdown
$('#minprice, #maxprice').keyup(function(){
  doneTyping(this);
});
function doneTyping(element) {
  var value = $(element).val();
  if($(element).attr("id")=="maxprice"){
    url = "script/limitedfetcher/maxprice.php";
  }else{
    url = "script/limitedfetcher/minprice.php";
  }
  $.post(url,{
    name: value
  },
  function(data, status){
    $("#loader").empty();
    $('#loader').html(data);
  });
}
</script>

最新更新