从JavaScript访问我的struts动作中的属性

时间:2012-09-14 17:56:25

标签: javascript jquery struts

我仍然试图了解客户端服务器通信如何使用JSP / js和Struts。 我的动作中有一个Struts属性,可以在我的页面上显示 据我所知,这可以通过查看我的Action来获取一个名为getMyMessage()的方法。所以这对我来说没问题。 我现在希望能够从我的Javascript中访问此值,以便在页面加载时动态填充测试区域。 我用

$(document).ready(function( data )
{
$('#contextsTextArea').html(data.myMessage);
});

但这不起作用。我知道我可以在我的JSP中分配一个var来存储struts属性并在我的JS中引用这个var但是有更简洁的方法吗?

2 个答案:

答案 0 :(得分:0)

如果您在谈论textarea,则必须使用.val()。如下所示。 $('#contextsTextArea').val(data.myMessage);

答案 1 :(得分:0)

JSP在服务器上运行,JavaScript在浏览器中运行。

您不能将像'myMessage'这样的JSP变量用作JavaScript中的变量。但是,您可以将其转换为服务器上的文本,以便在它到达您的浏览器时以JS的形式运行。 所以,尝试这样的事情:

$('#contextsTextArea').val('<s:property value="myMessage"/>')

在服务器上处理此JSP时,JS代码将保留为文本,而标记将转换为myMessage变量中的文本。

请注意,您确实需要JS转义myMessage,例如,如果消息包含单引号,那么JS将会中断。

查看您的网页来源,了解这里发生了什么。