您好我的項目是在struts 2中。我們已經編寫了用於客戶端驗證的通用js文件。 現在的問題是要實現內部化,我們必須根據語言更改警報消息。 所以我的問題是,有什麼辦法可以訪問js文件中的資源屬性。 或任何一個建議一些替代或例子相同。訪問* .js文件中的資源屬性文件
回答
您可以編寫一個JSON文件,其中使用本地英語作爲鍵和L10N消息作爲值,並根據用戶的瀏覽器語言配置使用AJAX加載相關的JSON,並使用alert(tanslatedTable [USER_LANG] [ENGLISH_STRING])
存儲與文件名的js文件的警告消息像
alert_en.js alert_fr.js alert_jp.js
在每個文件存儲警報這樣
var ALERT_EMAIL_INCORRECT = "Incorrect email";
var ALERT_USERNAME_INCORRECT = "Incorrect username";
按照用戶語言包含文件。
OR
您可以加載使用JSP文件和鏈接,在網頁這樣的資源包的消息。
<script type="text/javascript" src="YOUR-FILE.JSP"></script>
在這個JSP文件中,您從資源包中讀取後輸出JavaScript。
檢查this也。我
<code>
alert("<s:text name="amountMustBeNumeric"/>");
</code>
正常工作:
這是一個很好的方法,但我肯定會鼓勵使用由JSP支持的操作,而不是直接使用JSP。這可以保留任何可能需要在視圖圖層外發生的處理。 – 2012-07-13 17:52:32
是的,只從我的JS設計。不確定Java標準:) – kiranvj 2012-07-13 18:10:45
我這樣做是我的javascript腳本標記內的JSP頁面。
您可以使用我創建的messageResource.js庫讀取js文件中的屬性文件。
1)在你的html中包含messageResource.js。
<script src="messageResource.min.js"></script>
2)您可以按如下方式從js訪問屬性文件的鍵值對。
// initialize messageResource.js with settings
messageResource.init({
// path to directory containing message resource files(.properties files),
// give empty string or discard this configuration if files are in the
// same directory as that of html file.
filePath : 'path/messageresource/'
});
// will load the file 'path/messageresource/moduleName_en_US.properties'
// and callbackFunction will be executed when loading is complete.
messageResource.load('moduleName', callbackFunction, 'en_US');
// use messageResource.get function to get values from loaded file.
var value = messageResource.get('key', 'moduleName', 'en_US');
- 1. 從JSF中的屬性文件訪問資源包osgi bundle webapp
- 2. 非嵌入式資源js文件訪問資源文件(.resx)可以嗎?
- 3. 訪問資源文件中的Symfony
- 4. 訪問Android中的資源文件
- 5. 資源文件未顯示其屬性
- 6. 從資源中排除屬性文件
- 7. 在JAR文件中訪問資源
- 8. 無法訪問的資源文件夾
- 9. 無法訪問資源文件夾中的.mp4文件iphone xcode
- 10. 如何訪問主文件和測試文件中的資源
- 11. 替代資源包屬性文件
- 12. FindsBy屬性與資源文件c#Selenium
- 13. 類庫中的訪問屬性文件
- 14. 訪問JavaScript文件中的Model屬性?
- 15. SWF文件無法從ASP中訪問資源文件夾。 net
- 16. 無法訪問資源文件
- 17. 從資源文件訪問一個TextView
- 18. 直接訪問備用資源文件
- 19. 如何訪問html資源文件?
- 20. 的Symfony允許文件資源的訪問文件夾的.htaccess
- 21. PHP中的文件資源持久性
- 22. NSBundle和資源文件夾內的訪問文件夾
- 23. 訪問嵌入式資源文件的文件信息
- 24. struts的消息資源屬性文件中的參數
- 25. 如何訪問資源文件夾的MP3文件以外的MP3文件
- 26. 訪問屬性文件:Java和Linux的
- 27. 訪問maven項目中資源文件的問題
- 28. 在WPF中使用文化訪問資源文件C#
- 29. 資源文件
- 30. 在用戶控件中使用Javascript訪問資源文件
你能給我任何鏈接,我找到這樣的例子嗎? – Vipul 2012-07-13 17:04:24
translatedTable = {「zh-CN」:{「hello」:「zh-CN hello zh-CN」},「ja」:{「hello」:「ja hello ja」}};當你想提醒「hello」消息時,只需alert(compiledTable [lang] [「hello」])即可。當然,你可以將它擴展到字符串的屬性,比如String.property.L10N()方法,然後以這種方式調用它:alert(「hello」.L10N()); – user1524017 2012-07-16 07:08:24