使用jQuery或JavaScript读取属性文件

使用jQuery或JavaScript读取属性文件,java,javascript,jquery,struts2,Java,Javascript,Jquery,Struts2,我是jquery的新手。我想使用javascript或jquery读取jsp页面中的Java属性文件。我对这件事目瞪口呆,但并不满意 我的应用程序是由Struts2、EclipseJuno和Windows7开发的。这是我的javascript function checkedRadioForDelete(f) { var chx = document.getElementsByTagName('input'); for ( var i = 0; i < chx.lengt

我是jquery的新手。我想使用javascript或jquery读取jsp页面中的Java属性文件。我对这件事目瞪口呆,但并不满意

我的应用程序是由Struts2、EclipseJuno和Windows7开发的。这是我的javascript

 function checkedRadioForDelete(f) {
    var chx = document.getElementsByTagName('input');
    for ( var i = 0; i < chx.length; i++) {
        if (chx[i].type == 'radio' && chx[i].checked) {
            var con = confirm("Are you sure to delete?");
            if (con != true) {
            } else {
               f.action = "MyAction.action";
               f.submit();
             }
            return true;
         }
    }
    alert("Please select one.");
    return false;
 }
我想从属性文件中读取确认警报框值。那么,使用Ajax、jquery或javascript是否可行呢?

注意:根据注释更新我的答案。
Note: Updating my answer based on comments.

In your JSP page you can use scriptlets within javascript function (or tag) 

function checkedRadioForDelete(f) {
    var confirmMessage = '<%= properties.getProperty("confirm.message") %>';
    var alertMessage= '<%= properties.getProperty("alert.message") %>';
            var chx = document.getElementsByTagName('input');
            for ( var i = 0; i < chx.length; i++) {
                if (chx[i].type == 'radio' && chx[i].checked) {
                    var con = confirm(confirmMessage);
                    if (con != true) {
                    } else {
                       f.action = "MyAction.action";
                       f.submit();
                     }
                    return true;
                 }
            }
            alert(alertMessage);
            return false;
         }
在JSP页面中,可以在javascript函数(或标记)中使用Scriptlet 函数checkedRadioForOrderDelete(f){ var confirmMessage=''; var-alertMessage=''; var chx=document.getElementsByTagName('input'); 对于(变量i=0;i
不应该在JSP中使用Scriptlet,您可以使用struts2标记轻松地完成

在JSP中更改Javascript,如下所示:

function checkedRadioForDelete(f) {
    var chx = document.getElementsByTagName('input');
    for ( var i = 0; i < chx.length; i++) {
        if (chx[i].type == 'radio' && chx[i].checked) {
            var con = confirm("<s:text name="msg.confirm"/>");
            if (con != true) {
            } else {
               f.action = "MyAction.action";
               f.submit();
             }
            return true;
         }
    }
    alert("<s:text name="msg.alert"/>");
    return false;
 }
函数checkedRadioForOrderDelete(f){
var chx=document.getElementsByTagName('input');
对于(变量i=0;i
您可以使用我创建的库用javascript加载属性

1) 包括messageResource.js

<script src="messageResource.min.js"></script>

2) 如下更改javascript

// initialize messageResource.js  
messageResource.init({
    // path to directory containing properties files
    filePath : 'path/resource'
});

function checkedRadioForDelete(f) {

    // get values from properties files
    var confirmMsg = messageResource.get('msg.confirm', 'fileName');
    var alertMsg = messageResource.get('msg.alert', 'fileName');

    var chx = document.getElementsByTagName('input');
    for ( var i = 0; i < chx.length; i++) {
        if (chx[i].type == 'radio' && chx[i].checked) {
            var con = confirm(confirmMsg);
            if (con != true) {
            } else {
                f.action = "MyAction.action";
                f.submit();
            }
            return true;
        }
    }
    alert(alertMsg);
    return false;
}
//初始化messageResource.js
messageResource.init({
//包含属性文件的目录的路径
文件路径:“路径/资源”
});
函数checkedRadioForOrderDelete(f){
//从属性文件中获取值
var confirmsg=messageResource.get('msg.confirm','fileName');
var alertMsg=messageResource.get('msg.alert','fileName');
var chx=document.getElementsByTagName('input');
对于(变量i=0;i
如果有人需要有关Web应用程序的帮助,请参阅my,它解释了从项目目录中的属性文件读取属性的最简单方法。
总之,您将能够在隐藏输入中填充一些选定属性,然后从JavaScript读取隐藏输入值。

JavaScript(在客户端)必须使用AJAX读取它。为什么要用javascript来实现呢?展示一些代码来阐明您需要什么。如果你想不出一些代码,你需要更多地考虑你想做什么。@JuanMendes请查看我的更新帖子。你的意思是说你在属性文件中有一个要删除的东西的列表,你想用一堆复选框来删除它们吗?请澄清你的问题。显示您的属性文件以及您希望HTML做什么。“始终”是指在JSP服务器上运行时?谢谢。这对我来说没什么问题。第一次加载页面时,它对我不起作用。页面加载之后,它就开始工作了。你知道我错过了什么吗?我已经在DocumentReady函数中包含了init和load方法。
// initialize messageResource.js  
messageResource.init({
    // path to directory containing properties files
    filePath : 'path/resource'
});

function checkedRadioForDelete(f) {

    // get values from properties files
    var confirmMsg = messageResource.get('msg.confirm', 'fileName');
    var alertMsg = messageResource.get('msg.alert', 'fileName');

    var chx = document.getElementsByTagName('input');
    for ( var i = 0; i < chx.length; i++) {
        if (chx[i].type == 'radio' && chx[i].checked) {
            var con = confirm(confirmMsg);
            if (con != true) {
            } else {
                f.action = "MyAction.action";
                f.submit();
            }
            return true;
        }
    }
    alert(alertMsg);
    return false;
}