0

適切に機能する VEX ポップアップがありますが、内部の Raty 評価が適切に機能していません。サイトの他の場所では適切に機能していますが、このモーダルでは機能していません。評価するために星が表示されます (すべて同じ機能内にあります) が、クリックまたはホバーすることはできません。

これが Vex モーダルの JS 関数です。

$(document).ready ->                                                           
  $("#comment_post").click (event)->
    event.preventDefault();

    vex.defaultOptions.className = 'vex-theme-plain';
    vex.open
      content: $('.rating-modal').html();
      showCloseButton: false
      escapeButtonCloses: false
      closeClassName: "close-rating"

そして、これがRatyコードです

$(".user_rating").raty({                                                 
  score: 0,                                                              
  half: true,                                                            
  halfShow: true,                                                        
  click: function( score, evt ) {                                        
    $.ajax({                                                             
      type: 'POST',                                                      
      url: "#{store_rating_create_path}",                                
      data: { rating: score, user_id: "#{current_user.id}", store_id: "#{@store.id}" }                                                                     
    }).done(function (data){});                                          
  }                                                                      
});   

コンソール エラーはありません。何が起こっているのかわかりません。星は現れますが、機能していません。

レーティ星

4

1 に答える 1

0

モーダル Click イベント内に Raty コードを含める必要がありました。当たり前...つまり、もともとDoc Readyでロードしていたので、モーダルを起動するまでにすでに起動されており、モーダルを再度起動する必要がありました。そのため、コードをモーダルクリック関数内に移動しましたが、すべて問題ありません。

于 2015-07-01T14:32:46.957 に答える