2017-01-25 9 views
0

link_to 'Add new progress'をクリックするたびにモーダルポップアップdivを表示するレールアプリケーションを作成しています。 私はそれをやろうとしましたがうまくいきませんでした。 Javascriptは何のエラーもありません私は何をすべきかわかりません。あなたは既にjQueryのを使用しているように、誰link_toポップアップモーダルdivがレールで動作しない

私のコード=ビューファイル

.modal.fade#myModal 
.mymodal-content 
    My content goes here 
#main_div_index.row.clearfix 

    #index_sidebar_aims 
     %h4=link_to 'I have a new AIM' ,{'class':'opener','data-toggle':"modal" ,'data-target':"#myModal"} 
     %br 
     %h4=link_to 'I made progress' , aims_path 
#index_progress_div.col-md-6.col-xs-6.col-sm-6 
    show feeds from : 

私のコード= javascriptの

var open = $('.opener'); 
var modal = $('.mymodal'); 

open.onclick = function(){ 
    modal.style.display='show'; 
} 

私のコードのCSSは

.mymodal { 
display: none; /* Hidden by default */ 
position: fixed; /* Stay in place */ 
z-index: 1; /* Sit on top */ 
left: 0; 
top: 0; 
width: 100%; /* Full width */ 
height: 100%; /* Full height */ 
overflow: auto; /* Enable scroll if needed */ 
background-color: rgb(0,0,0); /* Fallback color */ 
background-color: rgba(0,0,0,0.4); /* Black w/ opacity */ 
} 

/* Modal Content */ 
.mymodal-content { 
    position: relative; 
    background-color: #fefefe; } 
+0

動作していない – azs06

+0

をblock''、唯一のJSでの、いくつかの問題は彼らのである「'modal.style.display =にshow''」' modal.style.display =を変更してみてください、私は私のコードの一部を変更し、デバッグしようとしましたが、 'application.self-d159971 ... .js?body = 1:49 Uncaught TypeError:未定義のプロパティ' display 'を設定できません。 –

+0

このエラーは、クリックしたときに表示されます? – azs06

答えて

0

それはそうです助けてください。クリックでモーダルを表示するにはjQueryを使用してみてください。

var open = $('.opener'); 
var modal = $('.mymodal'); 

open.on('click', function(e){ 
    e.preventDefault(); 
    modal.show() 
}) 
+0

ポイントは、私がlink_toをhtmlボタンに変更したときです –

+0

私はそれをlink_toにしたいのですがどうすればlink_toを使ってフォームを表示し、別のページにリダイレクトできるのですか? –

+0

申し訳ありませんが、レールで、現在どのレンダリングにリンクしていますか? h4タグ?それはjQueryのhttps://jsbin.com/xododij/edit?html,css,js,outputでも動作します。 jQueryで要素を選択すると、jQueryオブジェクトが返され、使用できるネイティブメソッドが多くないため、イベントを追加するためにjQueryを使用する必要があります。 – azs06

関連する問題