获取jQuery数据并将其用作laravel中数字字段的MAX值

时间:2019-03-20 06:28:08

标签: jquery laravel

嗨,我有这个jQuery脚本,可抓取某个laravel变量并将其设置为数字字段的最大值。这样我可以确保用户输入的值不能大于变量的值。这是脚本

var $limitQty = $('#product_name_1').val();
$('#product_name_1'+$orderItem_id).on('mouseup keyup', function () {
    $(this).val(Math.min({{$remainingDeliveries}}, Math.max(0, $(this).val())));
});

这是数字字段

<input class="form-control qty_in" type='text' data-type="qty_in" id='qty_in_1' name='qty_in[]' data-max='{{$remainingDeliveries}}' onkeyup='check(this);' for="1"/>

它们工作正常

现在我的问题是我有表格,但数字字段相同,需要此脚本具有不同的数据源。数据来自自动完成的jQuery脚本。这是代码,

//autocomplete script
$(document).on('focus','.autocomplete_txt',function(){
  type = $(this).data('type');

  if(type =='product_code' )autoType='product_code'; 
  if(type =='product_name' )autoType='name'; 
  // if(type =='qty_in' )autoType='qty_in'; 
  // if(type =='product_id' )autoType='id'; 

   $(this).autocomplete({
       minLength: 0,
       source: function( request, response ) {
            $.ajax({
                url: "{{ route('searchStock') }}",
                dataType: "json",
                data: {
                    term : request.term,
                    type : type,
                },
                success: function(data) {
                    var array = $.map(data, function (item) {
                       return {
                           label: item[autoType],
                           value: item[autoType],
                           data : item
                       }
                   });
                    response(array)
                }
            });
       },
       select: function( event, ui ) {
           var data = ui.item.data;           
           id_arr = $(this).attr('id');
           id = id_arr.split("_");
           elementId = id[id.length-1];
           $('#product_code_'+elementId).val(data.product_code);
           $('#product_name_'+elementId).val(data.name);
           $('#qty_in_'+elementId).val(data.qty_in);
           $('#qty_out_'+elementId).val(data.qty_out);
           $('#product_id_'+elementId).val(data.id);
       }
   });
});

我试图完成的是,如果可能的话,我想从$('#qty_in _'+ elementId).val(data.qty_in);中获取值。并放在$(this).val(Math.min({{--- PUT HERE ---}}, Math.max(0, $(this).val())));中可以吗?请帮帮我。提前非常感谢您!

2 个答案:

答案 0 :(得分:0)

您可以在输入中添加数据属性,并根据自己的需要访问它

select: function( event, ui ) {
       ...
       $('#qty_in_'+elementId).val(data.qty_in).data('max',data.qty_in);
}

答案 1 :(得分:0)

这个对我有用。

选择:function(event,ui){        ...        $('#qty_in _'+ elementId).val(data.qty_in).prop('max',data.qty_in); }