Java JSON 中的字符串

Java String in JSON

我有问题。我正在使用 JSON(Jquery) 提交表单并在 Java Class 中的 String 变量中设置值。我想在 Jquery 的警告框中显示该字符串。这是我的代码:

$.ajax({
    url: "//action",
    data: {
       //datas......
    },
    contentType: "//",
    dataType: "//",
    success: function (msg) {
        alert(msg.RegisterMessage);
    },
    error: function (msg) {}
});

问题是:

我从成功部分收到警报,但每次都收到 'undefined'。我想要在 java class.

中设置的警告框中的字符串

这是我的 java 代码:

  public String RegisterAction(){
        RegisterMessage = processAction.RegisterAction(userbean);
        return "success";
 }

RegistrMessage 变量包含一个字符串,无法获取它:( ..希望你能帮忙

问题是您正在 return 从您的服务器返回一个字符串,即:"success" 并且在您的方法中使用参数 msg 您正在尝试访问 属性命名的 RegisterMessage 不存在,因此您得到未定义。

要更正它...然后您必须 return 从您的服务器响应中得到类似的内容。

   {
    "register_message": "Ya now ok"
   }

现在您可以使用

在您的 js 方法中访问它

msg.register_message.

注意:

但是请确保首先使用像 jsonify 这样的库将此字符串转换为 js 中的对象,因为您从服务器发送的只是文本内容,或者更改服务器上的内容类型。

如果你要返回一个字符串。您的代码应该像这样显示您的成功消息。 success: function (msg) { alert(msg); }

试试这个可能对你有帮助。您正在返回一个字符串并期待一个对象。

从 java 代码中,您需要 return 字符串 json 格式为:

{"RegisterMessage":"success"}

好的,我找到了解决问题的方法。在 Java class 中,我为该字符串 RegisterMessage 生成了 getter 和 setter 方法,之后我的其余代码工作正常。

感谢所有帮助过的人。