2016-11-25 22 views
0

私は送信ボタンがないフォームを持っていますが、実際にフォームから投稿要求が送信されなかったので、私の質問はどのように画像クリックでリクエストを送信できますか?送信ボタンなしで投稿要求を送信する方法

@foreach($items as $item) 
     <form class="form-horizontal" role="form" method="post" action="{{ route('index', $item->id) }}"> 
      {{ csrf_field() }} 
      <div class="col-md-3"> 
       <div class="well"> 
        <a><img class="img-responsive center-block" src="{{ $item->imagePath }}" alt=""></a> 
        <h4 class="text-center">{{ $item->item_name }}</h4> 
       </div> 
      </div> 
     </form> 
     @endforeach 

あなたはjQueryを使ってそれを行うことができ、あなたに

答えて

3

ありがとうございます。

$('form#form_id a').click(function(e){ 
    $('form#form_id').submit(); 
    e.preventDefault(); 
    return false; 
}); 

しかし、あなたの場合には、あなたはポストの要求を提出するの任意のポイントを持っていませんが、とにかく上記動作するはず:フォームのIDを設定した場合、それは簡単です。 「送信ボタンを使用しないでください」と仮定すると

+0

okey、送信していない、リクエストを送信したいが、このコードは機能しません。 – Devmasta

+0

あなたは送信しないでコントローラメソッドに行きたいと思っていますか?これはあなたの質問ですか? –

+0

はい、画像をクリックすると、コントローラのカテゴリIDを送信します。 – Devmasta

0

は難しい要件ではなく、あなたはちょうどあなたが画像を使用したいので、それであると仮定されています

ではなく、リンクの送信ボタンを使用してください。

<button><img class="img-responsive center-block" src="{{ $item->imagePath }}" alt=""></button> 

デフォルトの背景とボタンの境界線をCSSでスタイルすることができます。

実際には、alt属性には何らかのコンテンツがあります。クリックすると何かすることをユーザーに知らせると、イメージは無意味な装飾イメージにはなりません。あなたは、私が書いたように、コントローラメソッドに行くためにあなたのルートに必要な上

1

このよう

<form action="" id="frm-id" method="post" class="form-horizontal "> 

でフォームにIDを与えるあなたの隣には、jsの方法は、URLで

$("#frm-id").submit(function(){ 
var form_data = $("#frm-id").serialize(); 
$.ajax({ 
      url: '/index/'+id, 
      type: "POST", 
    }); 
    }); 

ようになります。 ...

関連する問題