dongxia9519 2017-04-04 18:34
浏览 118
已采纳

为什么我不能使用jquery发布到laravel路由?

I'm trying to submit a single value as following?

HTML:

 <form class="form-horizontal" role="form" method="POST"  enctype="multipart/form-data" name="frmanalyse" id="frmanalyse">
{{ csrf_field() }}
 <label for="marginsource" style="float: left;  width:150px; text-align:left;">Margin Source</label>
 <input type="file" name="marginsource" id="marginsource" >
 <br />
 </form>

script:

 <script type="text/javascript">
  $( "#frmanalyse" ).submit(function(event) {
            $.post( "marginanalyser", {username: "medo ampir"}, function( data ) {
                alert(data);
            });
            event.preventDefault();
  });

in laravel routes:

Route::post('marginanalyser',function(Request $request){
 echo $request->input('username');

 $file = $request->file('marginsource');
echo 'File Name: '.$file->getClientOriginalName();
});

nothing shows in the message at all.

  • 写回答

1条回答 默认 最新

  • douliang9057 2017-04-04 19:04
    关注

    Change your JavaScript to use FormData as you aren't submitting the file

    $( "#frmanalyse" ).submit(function(event) {
        event.preventDefault();
    
        var formData = new FormData();
        formData.append('marginsource', $('#marginsource')[0].files[0]);
        formData.append('username', "medo ampir");
    
        $.ajax({
            url : window.location.origin + "/marginanalyser",
            type: "POST",
            data : formData,
            headers: {
                'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
            },
            processData: false,
            contentType: false,
            success:function(data, textStatus, jqXHR) {
                console.log(data);
            },
            error: function(jqXHR, textStatus, errorThrown){
                //if fails     
            }
        });
    });
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 关于#sql#的问题:#情况描述 在用vs对项目进行调试时,出现找不到网络路径,然后查看SQL配置工具,发现SQL服务显示远程调用过程失败(相关搜索:防火墙)
  • ¥15 主要进行描述泥浆在管路不同区段泥浆的密度不相同,泥浆的密度有高有低,此时管路的摩阻分布需要怎么计算,(标签-matlab)
  • ¥40 通过编制程序计算圆管内层流充分发展对流换热,参数如图5-4,以及公式5-16所示,要求用表5-6对程序计算准确性进行验证
  • ¥20 该学习哪个编程语言? AI会取代程序员吗?
  • ¥15 ensp如何拼通IP地址
  • ¥15 saber软件导入Ibis模型报错
  • ¥15 商城生产日期批次库存问题
  • ¥15 esp8266控制共阳极wrgb灯板无法关闭所有led灯
  • ¥100 python读取速度问题
  • ¥15 stm32f407使用DMA问题