Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Struts2和jsp表单使用jQueryAJAXPOST提交,并获得一条类似toast的消息,该消息出现或消失了?_Jsp_Jquery_Struts2_Toast - Fatal编程技术网

Struts2和jsp表单使用jQueryAJAXPOST提交,并获得一条类似toast的消息,该消息出现或消失了?

Struts2和jsp表单使用jQueryAJAXPOST提交,并获得一条类似toast的消息,该消息出现或消失了?,jsp,jquery,struts2,toast,Jsp,Jquery,Struts2,Toast,我正在使用struts2进行web应用程序开发。在注册表单中,我想使用query ajax,这样表单就可以异步提交,并且在成功提交表单时,我可以以toast或出现并消失的元素的形式获得服务器端成功消息 为此,我做了很多尝试,在某个地方实现了这一点,但没有使用jqueryajax,而是使用普通的javascript和ajax 代码流程如下所示: Home.jsp包含表单的页面 <s:form theme="simple" action="registrationForDem

我正在使用struts2进行web应用程序开发。在注册表单中,我想使用
query ajax
,这样表单就可以异步提交,并且在成功提交表单时,我可以以toast或出现并消失的元素的形式获得服务器端成功消息

为此,我做了很多尝试,在某个地方实现了这一点,但没有使用
jqueryajax
,而是使用普通的
javascript和ajax

代码流程如下所示:

  • Home.jsp
    包含表单的页面

            <s:form theme="simple" action="registrationForDemo"> <table>
                <tbody>
                    <tr>
                        <td><s:label value="username" /></td>
                        <td><s:textfield name="uName"
                                cssClass="textfield" /></td>
                    </tr>
                    <tr>
                        <td><s:label value="password" /></td>
                        <td><s:password name="password"
                                cssClass="textfield" /></td>
                    </tr>
                    <tr>
                        <td><s:label value="email" /></td>
                        <td><s:textfield name="email"
                                cssClass="textfield" /></td>
                    </tr>
                    <tr>
                        <td><s:label value="contact no." /></td>
                        <td><s:textfield name="contactNo"
                                cssClass="textfield" /></td>
                    </tr>
                    <tr>
                        <td><s:label value="location" /></td>
                        <td><s:textfield name="location"
                                cssClass="textfield" /></td>
                    </tr>
                    <tr>
                        <td><s:label value="category" /></td>
                        <td><s:select list="{'Hospital','Doctor','Clinic','Others'}" name="category"/></td>
                    </tr>
                    <tr>
                        <td></td>
                        <td><s:submit
                                value="Submit" cssClass="button" /></td>
                    </tr>
                </tbody>
            </table>
        </s:form>
    
    
    
  • 定义映射的文件,即struts.xml

  • 当数据成功保存在数据库中时,输出页面又是同一页面

现在使用ajax和jquery,我想知道如何实现所需的功能。从何处传递操作。。。还有,如何走得更远

如果您使用简单的java脚本和AJAX实现了这一点,我相信这与使用Jquery没有什么不同。 Jquery和java脚本没有什么不同,java脚本是在java脚本上构建的一个库,让开发人员生活愉快

您可以使用jQueryPost方法提交表单,并可以在成功注册时从服务器发送字符串,如

$.ajax({
  type: 'POST',
  url: url,
  data: data,
  success: success,
  dataType: dataType
});
var formInput='val='+val;
   $.getJSON('myaction',formInput,function(data) {
     $.each(data.myData,function(index, value){
       alert(index);
});
});
为了更好地控制,我建议您使用plugin和jqueryjson特性将数据发送到服务器并从服务器返回结果,比如

$.ajax({
  type: 'POST',
  url: url,
  data: data,
  success: success,
  dataType: dataType
});
var formInput='val='+val;
   $.getJSON('myaction',formInput,function(data) {
     $.each(data.myData,function(index, value){
       alert(index);
});
});
有关更多详细信息,请参阅本教程


对我来说,解决方案是
jquery.html()
函数。在这里,我传递了其他html内容来完成工作

Jquery非常棒,重量也很轻

//保存类别按钮
//saving category button
    $("#save").on({click:function () {
        if (!($("#subcategory").val().length == 0)) {
            $.ajax({url:"savecategory", data:$("#savecategoryform").serialize(), type:"post", dataType:"json", success:function (data) {
                alert("Successfully Saved");
            }});
        }
    }});


<form id="savecategoryform">
                        <table id="addtable">
                            <thead id="subcategoryhead">
                                <tr>
                                    <td align="left">
                                        <input type="text" name="strMainCategoryName"
                                            value="Main Category" width="80" id="maincategory"
                                            class="inputmaintext">
                                    </td>
                                    <td colspan="2" align="left">
                                        <img src="../images/plus.png" width="18" height="18"
                                            id="addmaincategory" hovertext="Add" class="link">
                                    </td>
                                </tr>
                            </thead>
                            <tbody id="subcategorybody"></tbody>
                        </table>
                        <input type="button" value="Save" id="save">
                    </form>
$(“#保存”)。在({单击:函数(){ if(!($(“#子类别”).val().length==0){ $.ajax({url:“savecategory”,数据:$(“#savecategoryform”).serialize(),类型:“post”,数据类型:“json”,成功:函数(数据){ 警报(“已成功保存”); }}); } }});
如果这有帮助的话,别忘了投票。你会发布你的答案吗?我有同样的问题