0

Bootstrap を含めなくても問題なく動作する Rails 3 アプリケーションに simple_form がありますが、bootstrap を追加すると、送信ボタンは何もしないようです。クリックしたときに Firebug コンソールに表示される唯一のものは次のとおりです。

Empty string passed to getElementById().
elem = document.getElementById( match[2] );

私の連絡先の部分は次のようになります。

<div class="slide" id="contact" data-slide="6" data-stellar-background-ratio="0.5">
      <div id="contactText">
         <div id="contactHeader">
            Contact Us
         </div>
      <%= simple_form_for @message, :url => contact_path, :html => {:class => "form-horizontal"} do |form| %>
         <%= form.input :name %>
         <%= form.input :email %>
         <%= form.input :subject %>
         <%= form.input :body, as: 'text'%>
         <%= form.button :submit, :class => "btn-primary", :value => "Send Message" %>
      <% end %>
      </div> <!-- end contactText --> 
</div> <!--end contact-->

私のレイアウトは次のとおりです。

<!DOCTYPE html>
<html>
<head>
   <title>Test App</title>

   <%= stylesheet_link_tag    "application", :media => "all" %>    
   <%= stylesheet_link_tag "http://fonts.googleapis.com/css?family=Oxygen", :rel => "stylesheet", :type => "text/css" %>
   <%= stylesheet_link_tag    "custom.css", :media => "all" %>
   <%= javascript_include_tag "application" %>
   <%= javascript_include_tag "my.js" %> 
   <%= javascript_include_tag "jquery.stellar.min.js" %>
   <%= javascript_include_tag "waypoints.min.js" %>
   <%= javascript_include_tag "jquery.easing.1.3.js" %>
   <%= csrf_meta_tags %>
</head>
<body>
   <%= yield %>
</body>
</html>

取り出し<%= javascript_include_tag "application" %>てjqueryとブートストラップCDNに置き換えて同じ結果を経験したため、ブートストラップが問題を引き起こしているようですが、ブートストラップを削除すると期待どおりに機能します。

simple_form を使用する前に、form_for で同じ問題が発生していました。また、simple_form によるブートストラップの指示に従ったと思います。

問題を明確にするのに役立つ可能性のある追加のファイルがある場合は、お知らせください。喜んで掲載させていただきます。

簡単なものがありませんか?

ありがとう!

4

1 に答える 1

1

<%= form.button :submit, :class => "btn-primary", :value => "Send Message" %>に変更

<%= form.submit "send message", :class => "btn-primary"%>

これらも外します

<%= javascript_include_tag "my.js" %> 
<%= javascript_include_tag "jquery.stellar.min.js" %>
<%= javascript_include_tag "waypoints.min.js" %>
<%= javascript_include_tag "jquery.easing.1.3.js" %>`

これらのファイルを次のようにファイルに含めapplication.jsます

//= require jquery
//= require jquery_ujs
//= require "my.js"
//= require "jquery.stellar.min.js"
//= require "waypoints.min.js"
//= require "jquery.easing.1.3.js"

Jquery が組み込まれた後に Bootstrap が表示されるはずです。gem を使用して、アプリにブートストラップを含めることができます。CDN から使用する場合は、bootstrap の関数を呼び出す前に、bootstrap.js が読み込まれていることを確認してください。

于 2013-02-20T19:06:09.517 に答える