Heim > Artikel > Backend-Entwicklung > Gibt es in jquery eine Möglichkeit, festzustellen, ob das Ergebnis einer Formularübermittlung erfolgreich oder nicht erfolgreich ist?
Das Besondere ist Folgendes: Als ich heute an einem Projekt arbeitete, habe ich das Ebenen-Popup-Plugin verwendet. Ich habe die Ajax-Übermittlung verwendet und den Rückruf nach der Ajax-Übermittlung verwendet, um festzustellen, ob die Übermittlung erfolgreich war. Rufen Sie parent.layer.close(index) auf, um das Popup-Fenster zu schließen und die aktuelle Seite außerhalb zu aktualisieren .
Aber hier kommt das Problem. Jetzt muss ich eine Formularüberprüfung hinzufügen. Ich habe vor, Jquery Validate zur Überprüfung zu verwenden, aber wenn ich es absende, verwende ich Ajax, ohne das Formular-Tag zu durchlaufen. Deshalb möchte ich fragen, ob es eine Möglichkeit gibt, festzustellen, ob das Ergebnis einer Formularübermittlung erfolgreich oder nicht erfolgreich ist
Formular:
<code class="html"> <div class="ibox-content"> <div class="col-md-12"> <div class="form-group"> <label class="col-sm-3 control-label">用户组名称:</label> <div class="col-sm-9"> <input id='name' name="name" class="form-control" placeholder="用户组名称" type="text" value="{$info.name}"> <span class="help-block m-b-none id='user_help' ">输入用户组名称,不能少于3个字</span> </div> </div> <div class="form-group"> <label class="col-sm-3 control-label">所属上级组名称 :</label> <div class="col-sm-9"> <select class="form-control" name="pid[]" id='pid'> {$a} </select> <span class="help-block m-b-none">请下拉选择该分组的所属上级,若该分组没有所属上级,则选择最上级</span> </div> </div> <div class="form-group"> <label class="col-sm-6 control-label">组详细说明:</label> <div class="col-sm-6"> <textarea id='description' name="description" placeholder="输入组详细说明" style="height: 120px; width: 640px">{$info.description}</textarea> </div> </div> <input type="hidden" id='id' name="id" value="{$info.id}"> <button class="btn btn-primary" id='button'>提交</button> </div> </div> js ajax提交</code>
<code> var url = "{:U('info')}"; var index = parent.layer.getFrameIndex(window.name); $('#button').click(function(){ $.post(url,{ 'name' : $('#name').val(), 'pid' : $('#pid').val(), 'description' : $('#description').val(), 'id' : $('#id').val() },function(data){ if(data.status != 1){ alert(data.info); }else{ alert(data.info); parent.layer.close(index); //执行关闭 } }) }) </script></code>
Das Besondere ist Folgendes: Als ich heute an einem Projekt arbeitete, habe ich das Ebenen-Popup-Plugin verwendet. Ich habe die Ajax-Übermittlung verwendet und den Rückruf nach der Ajax-Übermittlung verwendet, um festzustellen, ob die Übermittlung erfolgreich war. Rufen Sie parent.layer.close(index) auf, um das Popup-Fenster zu schließen und die aktuelle Seite außerhalb zu aktualisieren .
Aber hier kommt das Problem. Jetzt muss ich eine Formularüberprüfung hinzufügen. Ich habe vor, Jquery Validate zur Überprüfung zu verwenden, aber wenn ich es absende, verwende ich Ajax, ohne das Formular-Tag zu durchlaufen. Deshalb möchte ich fragen, ob es eine Möglichkeit gibt, festzustellen, ob das Ergebnis einer Formularübermittlung erfolgreich oder nicht erfolgreich ist
Formular:
<code class="html"> <div class="ibox-content"> <div class="col-md-12"> <div class="form-group"> <label class="col-sm-3 control-label">用户组名称:</label> <div class="col-sm-9"> <input id='name' name="name" class="form-control" placeholder="用户组名称" type="text" value="{$info.name}"> <span class="help-block m-b-none id='user_help' ">输入用户组名称,不能少于3个字</span> </div> </div> <div class="form-group"> <label class="col-sm-3 control-label">所属上级组名称 :</label> <div class="col-sm-9"> <select class="form-control" name="pid[]" id='pid'> {$a} </select> <span class="help-block m-b-none">请下拉选择该分组的所属上级,若该分组没有所属上级,则选择最上级</span> </div> </div> <div class="form-group"> <label class="col-sm-6 control-label">组详细说明:</label> <div class="col-sm-6"> <textarea id='description' name="description" placeholder="输入组详细说明" style="height: 120px; width: 640px">{$info.description}</textarea> </div> </div> <input type="hidden" id='id' name="id" value="{$info.id}"> <button class="btn btn-primary" id='button'>提交</button> </div> </div> js ajax提交</code>
<code> var url = "{:U('info')}"; var index = parent.layer.getFrameIndex(window.name); $('#button').click(function(){ $.post(url,{ 'name' : $('#name').val(), 'pid' : $('#pid').val(), 'description' : $('#description').val(), 'id' : $('#id').val() },function(data){ if(data.status != 1){ alert(data.info); }else{ alert(data.info); parent.layer.close(index); //执行关闭 } }) }) </script></code>
Ajax kann auch Formulare einreichen
Nachdem das Formular übermittelt wurde, wird anhand der Operationsergebnisse der Datenbank beurteilt, zu welcher Seite gesprungen werden soll, Erfolg oder Misserfolg
Nachdem Daten basierend auf Ajax angefordert wurden, können die zurückgegebenen Ergebnisse beurteilt werden
Erfolg kann feststellen, ob die Ajax-Daten erfolgreich an den Server übertragen wurden, und die vom Server zurückgegebenen Daten bestimmen, ob der Server sie erfolgreich verarbeitet hat