2017-08-23 7 views
0

私はこのようなlaravel 5.3JavaScriptでフォームのアクションを変更するにはどうすればよいですか?

私のフォームを使用します。

if (true) { 
    $('#my-form').attr('action', '/shop/detail') 
    return true; 
} 
:それは一定の条件を満たしている場合、私はこのようなJavaScriptでアクション

マイ条件を変更したい

{!! Form::open(['route' => 'shop.process','id'=>'my-form']) !!} 
    ... 
{!! Form::close() !!} 

条件が満たされた場合、URLを次のように変換します。

http://myshop.dev/shop/detail

しかし、内容はそのページから

コンテンツを表示されていないだけで、私はURLをクリックして

どのように私はこの問題を解決することができますを入力したときに表示されますか?

+0

?アクションURLを変更してフォームフィールドを変更しようとしていますか?それから、フォームコンテンツをajax経由でロードするか、ページをリロードするだけで済むようにすることはできません –

答えて

0

フォームの内容を変更するには、ajaxを使用してそのフォームをフォーム領域にロードする必要があります。

/shop/detailが別の形式であると仮定します。あなたはこのようにしなければなりません。どちらか)(.LOADを使用して()、またはアヤックス

if (true) { 
    $('#my-form').attr('action', '/shop/detail'); 
    $('#my-form').load('/shop/detail'); 
    return true; 
} 

それとも...

if (true) { 
    $('#my-form').attr('action', '/shop/detail') 
    $.ajax({ 
     url:'/shop/detail', 
     success:function(data){ 
      $('#my-form').html(data); 
     } 
    }) 
    return true; 
} 

私はあなた/ショップ/ディテールがあるだけで疑うしかし、上記の二つの方法は、作業しにくいです内側のフォーム。最も可能性の高いフォーム。つまりつまり、要素を完全に置き換える必要があります。データを古い形式に読み込まない。変更したいどのようなコンテンツ

if (true) { 
    $.ajax({ 
     url:'/shop/detail', 
     success:function(data){ 
      $('#my-form').replaceWith(data); 
      return true; 
     } 
    }) 
} 
関連する問題