VaadinはJava Webアプリケーションフレームワークなので、Vaadin JavaコードにjQuery javascriptスニペットを挿入することは可能ですか?Vaadinフレームワークの中でjQueryを使用することはできますか?
答えて
はいです。
このような独自のApplicationServlet継承したクラスを作成します。
public class MyApplicationServlet extends ApplicationServlet {
@Override
protected void writeAjaxPageHtmlVaadinScripts(Window window,
String themeName, Application application, BufferedWriter page,
String appUrl, String themeUri, String appId,
HttpServletRequest request) throws ServletException, IOException {
page.write("<script type=\"text/javascript\">\n");
page.write("//<![CDATA[\n");
page.write("document.write(\"<script language='javascript' src='./jquery/jquery-1.4.4.min.js'><\\/script>\");\n");
page.write("//]]>\n</script>\n");
super.writeAjaxPageHtmlVaadinScripts(window, themeName, application,
page, appUrl, themeUri, appId, request);
}
}
その後、あなたのweb.xmlでVaadinサーブレットを交換する(デフォルトはcom.vaadin.terminal.gwt.server.ApplicationServlet
です):
<servlet-class>com.example.MyApplicationServlet</servlet-class>
あなたはその後、jQueryの呼び出しを行うことができますあなたのコードに電話で:
MyApplication.getMainWindow().executeJavascript(jQueryString);
私が試したように、この行のコードは:MyApplication.getMainWindow()。executeJavascript(jQueryString);いくつかのシンプルなjavascriptコードでのみ動作する可能性があります。もっと複雑なjsコードをサポートするのはあまりないようです。 – Kyleinincubator
私はjQueryについてよく分かりませんが、少なくとも私のVaadinアプリケーションでは、Invittedチャート(Highchartsに基づいています)で使用されています。 jsファイルでjQueryを宣言し、jQuery.jsのようなページヘッダーに配置し、executeJavascriptで関数を呼び出した場合、それはうまくいくでしょうか?さらに、jQueryライブラリが正常に読み込まれたことを確認しましたか? – miq
また、次の例もチェックしてください。http://vaadinjquery.appspot.com/ – miq
もう1つのcusto ApplicationServletためmizing:
public class VaadinApplicationServlet extends ApplicationServlet {
@Override
protected void writeAjaxPageHtmlHeader(BufferedWriter page, String title, String themeUri, HttpServletRequest request) throws IOException {
page.write("<script language='javascript' src='http://code.jquery.com/jquery-1.8.0.min.js'></script>");
super.writeAjaxPageHtmlHeader(page, title, themeUri, request);
}
}
あなたは@JavaScriptと@StyleSheet注釈実行するために
@StyleSheet({
/*
* JQuery UI
*/
"vaadin://jquery/jquery-ui-1.9.2.custom/css/ui-darkness/jquery-ui-1.9.2.custom.min.css",
})
@JavaScript({
/*
* JQuery
*/
"vaadin://jquery/jquery-1.11.1.min.js",
/*
* JQuery UI
*/
"vaadin://jquery/jquery-ui-1.9.2.custom/js/jquery-ui-1.9.2.custom.min.js",
})
public class MyUI extends UI {
...
}
を使用することができます。
JavaScript.getCurrent().execute("...javascript code here...")
はより大きなスクリプトには注意してください。 vaadinアノテーションを使用してjavascriptを追加すると、パフォーマンスが非常に悪くなります。 htmlヘッダーにスクリプトを手動で挿入する方が効果的です。
ファイル(例: '/ jquery/... ')はどこに行きますか?プロジェクトのどのフォルダですか? – luckydonald
ファイルは "vaadin://" URLでアクセスできるアプリケーションの "VAADIN"フォルダに入ります – d2k2
- 1. Polymer 2アプリケーションでvaadin-gridを使用することはできますか?
- 2. jQueryをjavaScriptで使用することはできますか?
- 3. 既存のjQueryモバイルアプリケーションでUIの一部にIonicフレームワークを使用することはできますか?
- 4. RESTful MVCフレームワークでHTTPリダイレクトを使用することはできますか?
- 5. Onsen UIフレームワークでRequire.jsを使用することはできますか?
- 6. d3.jsをgatsby.jsフレームワークで使用することはできますか?
- 7. Jqueryの使用を避けることはできますか?
- 8. 最新のVaadinフレームワークでVaadin-spring-boot-startterを使用するようにVaadinプロジェクトを設定する方法
- 9. AutoITフレームワークを使用できるシナリオはどこですか?
- 10. Laravelフレームワークで.bladeを使用することは何ですか?
- 11. jQueryスクリプトの中でPHPを使用することはできますか?たとえば
- 12. Play!フレームワーク私はモデルパッケージの中でクラスを作ることができますシングルトン?
- 13. サブ/サブサブドメインの途中でワイルドカードを使用することはできますか?
- 14. コードペンでjQueryを使用することはできません
- 15. 中国でgoogle analyticsを使用することはできますか
- 16. フレームワークを別のフレームワークに静的にリンクすることはできますか?
- 17. Cocas2Dの中でカメラを使うことはできますか?
- 18. `lazy_static`の中で` evmap`を使うことはできますか?
- 19. jQueryなしでMaterializecssを使用することはできますか?
- 20. ここでLESS CSSフレームワークを使用できないのはなぜですか?
- 21. vaadinモーダルウィンドウのコンポーネントを更新することはできますか?
- 22. このタスクに使用するHTML5/CSS3/JS-or-jQueryフレームワークはどれですか?
- 23. このjQueryを短くすることはできますか?
- 24. このjQueryをクリーンアップすることはできますか?
- 25. QAnimationフレームワーク:ここで使用するプロパティ
- 26. jQuery Mobileの特定のものを非jQuery Mobileプロジェクトで使用することはできますか?
- 27. xulでjqueryを使用することは可能ですか?
- 28. 私はPHPプロジェクトでZendフレームワークを使用できますか?
- 29. VaadinをScalaで使用する - Playのようなフレームワークを使用するのは理にかなっていますか?またはリフト?
- 30. フレームワークを不用意に変更することはできませんか?
私はなぜそうではありませんが、私はあなたが望む理由がわかりません...確かにフレームワークは分離されたビューとコントローラを可能にしますか? – bdares
フレームワークは、ネイティブjsコードを使用するカスタムコンポーネントを提供します。しかし、私はいくつかの複雑なjsコードを試していたが、おそらく何も起こっていない。だから私はそのような質問をしました。 – Kyleinincubator