我的Action类中有一个名为checkSubOffer的函数,它将返回一个布尔值。我想在我的JavaScript函数docheckSubOf中使用此值。
function docheckSubOf(){
thisForm.method.value = "checkSubOf";
}
有没有办法做到这一点。我正在使用Struts 1
答案 0 :(得分:0)
一般来说,你不会,至少不是直接。
有(至少)四种选择:
选项1:在JSP文件中渲染JavaScript,使用普通的S1 JSP方法将其注入JS。它需要正确地进行JavaScript转义。
选项2:通过 JSP处理器渲染JavaScript ,例如,将*.js
添加到需要JSP处理的文件列表中。 IMO不是首选,但它是一种选择。其他框架就是这样做的(比如Rails ERb JS模板),但它有点反直觉,并且可以逐步增加查找功能。
选项3:稍后通过Ajax检索该值。可能也不是首选,因为有一种机制可以用来避免它。如果页面上有很多其他Ajax,它可能不会那么糟糕,但需要新的或修改过的JSON端点等。
选项4:使用常规JSP方法将数据渲染到JSP中。 JS通常应该外部化为.js
文件,只有在页面是完全读者之后才能引用此数据,例如$(function () { ...data is ready... }
。
您可能也希望对数据进行命名空间/模块化,但这无论如何都是一种良好的做法。