Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/425.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/86.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在表单Serialize()ajax中包含提交按钮名称和值_Javascript_Jquery_Ajax_Jquery Events - Fatal编程技术网

Javascript 如何在表单Serialize()ajax中包含提交按钮名称和值

Javascript 如何在表单Serialize()ajax中包含提交按钮名称和值,javascript,jquery,ajax,jquery-events,Javascript,Jquery,Ajax,Jquery Events,我遇到了问题,我的代码无法工作,因为我的服务器脚本端需要来自提交按钮的名称。我使用的是Ajax方法,我使用的是data:serialize,当我单击Submit时,它就不起作用了。以下是我的JavaScript代码: $(function(){ $('#buy_product').submit(function(e){ e.preventDefault(); var submitData = $('#buy_product').serialize();

我遇到了问题,我的代码无法工作,因为我的服务器脚本端需要来自提交按钮的名称。我使用的是Ajax方法,我使用的是data:serialize,当我单击Submit时,它就不起作用了。以下是我的JavaScript代码:

$(function(){
    $('#buy_product').submit(function(e){
        e.preventDefault();
        var submitData = $('#buy_product').serialize();
            submitData.push({ name: this.name, value: this.value });
        $('.loading').html('{{HTML::image('img/ajax-loader.gif')}}');
        $.ajax({
            type: "POST",
            data: submitData,
            url: "{{URL::base()}}/products/view/{{$products->id}}/{{Str::slug($products->name_product, '_')}}",
            success: function(msg){
                $('#qty').val(''); 
                $('.loading').html(msg);
            }
        });
    }); 
}); 
如果你有线索,请告诉我,我会很高兴的


我的按钮是这样的:

<input name="update" id="update" type="submit" value="update">

<input name="empty" id="empty" type="submit" value="empty">

我相信您不能这样做,但可以使用隐藏字段

<input type="hidden" name="any_name" value="any_value" />

试试这个:

Java脚本代码:

<script type='text/javascript'>
        $(function(){
            $('#form').submit(function(e){
                e.preventDefault();
                var submitData = $('#form').serialize();
                var btnName = $('#submit').attr('name');
                var btnVal = $('#submit').val();
                var btn = '&'+btnName+'='+btnVal;
                submitData += btn;
                alert(submitData);                

            }); 
        }); 
</script>
<form action="" id="form" type='post'>
    <input type="text" name="name" id="name" value='Scott'/>
    <input type="submit" name="submit" id="submit" value='POST'/>
</form>
var submitData = $('#buy_product').serialize();
submitData += '&btnName=' +  $('#your_submitbtn_id').attr('name') + '&btnValue='+ $('##your_submitbtn_id').attr('value'); 
这可能也有帮助<代码>