【问题标题】:JavaScript: get text from a properties-fileJavaScript:从属性文件中获取文本
【发布时间】:2015-10-23 07:08:49
【问题描述】:

我有这个 JavaScript 函数:

function changeMessage() {

    var msgDiv = $("body").find("#openChangeMsgDiv");
    var msgSpanOut = $("body").find("#openChangeMsgSpan");
    var msgIcon = $("body").find("#openChangeMsgGlyphicon");
    var msgSpanText = $("body").find("#openChangeMsgText");
    var msgText = "PROBLEM";

    if($("#resetMessage").val() == "true") {
        msgDiv.addClass("pull-right col-xs-8");
        msgSpanOut.addClass("errorMsg");
        msgIcon.addClass("glyphicon glyphicon-warning-sign msgSign");
        msgSpanText.text(msgText);
    } else {
        return true;
    }
}

此时我在跨度元素“msgSpanText”中写入文本“问题”。我在我的 JavaScript 中定义了这个文本。我想从属性文件中获取要添加到跨度元素中的文本,例如

message.changes.open=NEW TEXT HERE

而不是 JavaScript。是否可以在我的 JS 函数中提及 message.changes.open 并获取文本 NEW TEXT HERE

我希望我想做什么很清楚;-) 谢谢!!

【问题讨论】:

  • 您想更改 Span Text 的文本,方法是:messages.changes.open='NEW TEXT HERE'?
  • 我有两个文件:file.jsfile.properties。如果文本更改,我只想更改属性文件。 message.changes.open=NEW TEXT HERE 是属性文件的一部分。 JavaScript 应该从属性文件中“读取”文本。

标签: javascript jquery properties properties-file


【解决方案1】:

根据您的评论,您必须先将 file.properties 文件加载到浏览器中(如果是 javascript 没问题)。然后简单地修改这一行:

var msgText = "PROBLEM";

与:

var msgText = messages.changes.open;

但是,我对这种方式编程非常谨慎,因为文件包含是必要的。

【讨论】:

  • 通常属性文件的数据是从Java方法中读取的。但是在这种特定情况下,我需要 JavaScript 来读取这些数据,因为需要动态功能。是否有可能使用 JavaScript 通过 Java 读取属性文件,这样我就不需要将属性文件加载到浏览器中?感谢您的帮助!
  • 我不会推荐它。事实上,我是强烈反对的。您要做的是让 Java 解析出文件并通过 Java 提供它。当它真的应该静态服务时。如果您必须这样做,那么您必须让 Java 将 Javascript 代码直接打印到 HTML 代码中。
  • 非常感谢您迄今为止的帮助!最后一个问题:如何将文件加载到浏览器中,以便 JavaScript 可以使用它?
  • 你添加了一个脚本标签。 <script src="yourJavascriptFile.js"></script>
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-02-08
  • 1970-01-01
  • 2020-12-27
  • 1970-01-01
  • 1970-01-01
  • 2020-08-18
  • 1970-01-01
相关资源
最近更新 更多