是否可以使用 DOJO 将 ajax 添加到 jsp 页面中的 struts2 标签、文本字段或复选框?如果是的话怎么办?

发布于 2024-09-11 22:55:07 字数 127 浏览 1 评论 0原文

是否可以使用 DOJO 将 ajax 添加到 jsp 页面中的 struts2 标签、文本字段或复选框?如果是的话怎么办?

或者如果不是,我应该使用什么库将 ajax 应用于单个 textField ?

谢谢

Is it possible to add ajax to the struts2 tags ,textfield or checkbox in jsp page using DOJO ? if yes how ?

Or if not what library should i use to apply ajax to single textField ?

Thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

遗失的美好 2024-09-18 22:55:07

查看 Struts2 jQuery 插件

其中包含一个用于 Struts2 的 AJAX 文本字段标记

Take a look at the Struts2 jQuery Plugin.

This contains an AJAX Textfield Tag for Struts2.

幸福%小乖 2024-09-18 22:55:07

要使用 DOJO,首先添加这样的 DOJO 标签指令

<%@ taglib prefix="sx" uri="/struts-dojo-tags"%>

,然后在 JSP 的头部添加以下行

<sx:head debug="false" cache="false" compressed="true" />

然后从要应用 ajax 的 struts 标签监听事件,如下所示

<s:radio label="Radio" name="rad" list="list2"  
                onchange="show_details();" ></s:radio>

在 javascript 中捕获此事件并按如下方式发布主题

<script>
    function show_details() {
        dojo.event.topic.publish("show_detail");
    }
</script>

并通过struts div标签在同一JSP上监听发布的主题

<sx:div showLoadingText="false" id="details" href="DetailAction" theme="ajax"
    listenTopics="show_detail" formId="frm_demo"></sx:div>

脚本调用中的参数“show_detail”和div标签的listenTopics属性应该完全匹配。该 div 将监听主题并获取 href 属性并与 struts.xml 中的操作相匹配

<action name="DetailAction" class="ajaxdemo.action.DetailAction">
            <result>/Detail.jsp</result>
</action>

它将调用您的操作类 ajaxdemo.action.DetailAction

并根据 radio 给出的值选择值按钮并呈现以下 JSP Detail.jsp

<%@ taglib prefix="s" uri="/struts-tags"%>

<s:if test="lstList != null">
    <s:select list="lstList"></s:select>
</s:if>

并将输出放置在主 JSP 中定义 div 标记的位置。

您还可以在 java-tale.blogspot.com

To use DOJO, First of all add the DOJO tag directive like this

<%@ taglib prefix="sx" uri="/struts-dojo-tags"%>

and then add the following line in the head part of your JSP

<sx:head debug="false" cache="false" compressed="true" />

Then listen the event from the struts tag on which you want to apply the ajax as follows

<s:radio label="Radio" name="rad" list="list2"  
                onchange="show_details();" ></s:radio>

catch this event in javascript and publish the topic as follows

<script>
    function show_details() {
        dojo.event.topic.publish("show_detail");
    }
</script>

And listen the published topic on the same JSP by struts div tag

<sx:div showLoadingText="false" id="details" href="DetailAction" theme="ajax"
    listenTopics="show_detail" formId="frm_demo"></sx:div>

The argument "show_detail" in the script call and div tag's listenTopics attribute should match exactally. That div will listen the topic and pick up the href attribute and matches with the action in struts.xml

<action name="DetailAction" class="ajaxdemo.action.DetailAction">
            <result>/Detail.jsp</result>
</action>

It will call your action class ajaxdemo.action.DetailAction

and selects the values according to the value given by radio button and renders the following JSP Detail.jsp

<%@ taglib prefix="s" uri="/struts-tags"%>

<s:if test="lstList != null">
    <s:select list="lstList"></s:select>
</s:if>

and places the out put where you have defined your div tag in your main JSP

You can also view the detail example on java-tale.blogspot.com

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文