0

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

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

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

4

2 回答 2

0

如果您在谈论,textarea则必须.val()改用。像下面这样。 $('#contextsTextArea').val(data.myMessage);

于 2012-09-14T18:06:56.400 回答
0

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

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

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

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

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

查看您的页面源代码以了解此处发生的情况。

于 2012-09-14T20:35:35.543 回答