ruby-on-rails
  • angularjs
  • 2017-10-20 8 views 0 likes 
    0

    私は、AnglesJSのみを使用し、jQuery/Turbolinksは使用しないRails 5アプリケーションを持っています。フォームヘルパーによって生成される典型的な送信ボタンは、フォームを送信せずにこのアプリケーションでは機能しません(無効にすると直ちに無効になります)。代わりにtype = "Submit"のbutton_tagsを使用します。Rails Submit Buttons Not working(name = "commit")

    投稿ボタンから「name = 'commit'」属性を削除した場合、フォームをサブミットして期待通りに機能します。私は見ていないこの属性にバインドされているものがあるかどうか疑問に思います。以下はその一例です。

    <%= form_for(role) do |f| %> 
    
        <div class="field"> 
        <%= f.label :name %> 
        <%= f.text_field :name %> 
        </div> 
    
        <div class="actions"> 
        <%= f.submit %>   <!-- this fails --> 
        <input type="submit" /> <!-- this works --> 
        </div> 
    <% end %> 
    

    は、クリックする前に、ボタンのHTMLは次のようになります。

    <input type="submit" name="commit" value="Update Role" data-disable-with="Update Role"> 
    

    をクリックした後、ボタンは次のようになります。

    <input type="submit" name="commit" value="Update Role" data-disable-with="Update Role" disabled="disabled" class="disabled"> 
    

    Chromeはフォームがあったことを考えているかのようにですこれは何かが起こるのを妨げている。

    +0

    これまでのアップデートでは、私はdebugin Firefoxに行きました。フォームヘルパーブトンは期待通りに動作します。おそらく、私は妨げになっているChrome拡張機能を持っています。 – Csizzle

    答えて

    0

    ドキュメント:documentationが示唆Link

    <div class="actions"> 
        <%= f.submit "Commit", name: "commit" %> 
        #or 
        <input type="submit" name="Commit" /> 
        </div> 
    
    +0

    これらの構成の両方がフォームを送信できません。 name = "commit"属性を削除するだけで、テストで成功したことが証明されています。 – Csizzle

    +0

    @Csizzleフォームに属するjs行はありますか? Cuz、投稿に欠けているsmth – 7urkm3n

    +0

    足場から生成された単純なフォームなので、フォームに関連付けられているJSはありません。何かが欠落していると思う理由はありますか? – Csizzle

    0

    ように、これは完全に罰金です。それぞれ提出するようなタイプで、ボタンを提出するf.submitを変えていくのform_for

    <%= form_for @post do |f| %> 
        <%= f.submit %> 
    <% end %> 
    

    Railsの。サーバーを一度再起動し、問題が解決されないかどうかを確認してください。

    さらに、タイプがsubmitのすべてのボタンが、フォームの送信ボタンとして使用されることがあります。

    +0

    サーバーを再起動できませんでした。私が使用していた回避策は、タグを

    関連する問題