2011-09-06 60 views
1

我使用ajax提交表单,而我需要做的是在成功提交后重置表单。但是,发生的事情是,一旦用户提交,表单将被清除。我试图将代码置于“成功”,“完成”中,但即使用户收到错误消息,它也会保持重置状态。我只需要在else语句之后重置。即;用户收到成功消息。我该如何纠正这一点。由于成功提交jQuery重置表单

$.ajax({ 
     type: "POST", 
     url: "boxrtrvajax.php", 
     cache: false, 
     data: send, 
     success: function (data) { 
     if (data == 'No data'){ 
     $('#brtv-result').addClass("result_msg").html('Please fill in all fields'); 
     } 

     else 

     //location.reload(true); 
     $('#brtv-result').addClass("result_msg").html("You have successfully retrieved: "+data).fadeIn(4000).delay(4000).fadeOut(4000); 
     $("#BRV-brtrv-slider").val(0).slider("refresh"); 
     $("input[type='radio']").attr("checked",false).checkboxradio("refresh"); 
     var myselect = $("select#BRV-brtrv-department"); 
     myselect[0].selectedIndex = 0; 
     myselect.selectmenu("refresh"); 
     var myselect = $("select#BRV-brtrv-address"); 
     myselect[0].selectedIndex = 0; 
     myselect.selectmenu("refresh"); 
     }, 

     error:function (xhr, ajaxOptions, thrownError){ 
     jAlert('There was an exception thrown somewhere'); 
     alert(xhr.status); 
     alert(thrownError); 
    } 
    }); 

回答

1

你不必在你的else语句括号所以它完成的代码不管是什么

if (data == 'No data') 
     $('#brtv-result').addClass("result_msg").html('Please fill in all fields'); 
else 
{ 
     //location.reload(true); 
     $('#brtv-result').addClass("result_msg").html("You have successfully retrieved: "+data).fadeIn(4000).delay(4000).fadeOut(4000); 
     $("#BRV-brtrv-slider").val(0).slider("refresh"); 
     $("input[type='radio']").attr("checked",false).checkboxradio("refresh"); 
     var myselect = $("select#BRV-brtrv-department"); 
     myselect[0].selectedIndex = 0; 
     myselect.selectmenu("refresh"); 
     var myselect = $("select#BRV-brtrv-address"); 
     myselect[0].selectedIndex = 0; 
     myselect.selectmenu("refresh"); 
    } 
+0

非常感谢你 – bollo