3

最近、Rails アプリの 1 つを 2.3 バージョンから 3.2 バージョンにアップグレードしています。そして、html.erb ファイルに記述された JavaScript に奇妙な動作があることに気付きました。これは、私がアップグレードした他のアプリでは決して起こりませんでした。

Ruby 1.9.3 Rails 3.2.14 にアップグレードしています

現在、jquery のバージョンは 1.4 ですが、アプリケーションが完全に移植されたら、1.9 または 1.10 にアップグレードします。

これが問題です。テンプレートに記述された JS があり、この JS のある時点で条件が大きくなると、その後に記述された JS コードは、firebug の JS エラーなしでページ上にテキストとしてレンダリングされます。スクリーンショットを添付しましたので、ご覧ください。

そして、その JS コードを .js ファイルに削除すると、この問題はなくなります。Rails 2.3アプリケーションで同じコードが正常に機能するため、ERBテンプレートの解析に何かが必要だと思います。

ここに画像の説明を入力

スクリーン ショットでは、JS コードは次のようにレンダリングされます。

" 0) jQuery("#li_" + caab_jurisdiction_name).show();..." 

それはこのようなものから始まります

"if (jQuery("#mortgage_product_group_econveyance_editions").attr("value").indexOf(caab_jurisdiction_value) >  0) jQuery("#li_" + caab_jurisdiction_name).show();..."
4

1 に答える 1