PDA

View Full Version : سوال: چطوری میشه بعداز زخیره اطلاعات با ajax فرم رو reset کرد



hamidhassas
جمعه 30 مرداد 1394, 15:05 عصر
من یک فرم دارم که با ajax اطلاعات رو در دیتابیس زخیره میکنم میخوام کاری کنم که وقتی اطلاعات در دیتابیس زخیره شد اطلاعاتی که در فرم وارد شده به صورت خود کار پاک بشن

sinoser
جمعه 30 مرداد 1394, 15:53 عصر
توی تابع success بعد از این که ذخیرتون رو انجام دادین دستوری مثل زیر رو بزنید. (ای فروم خودتونو بدین)
$("#formId")[0].reset()

hamidhassas
جمعه 30 مرداد 1394, 19:10 عصر
ممنون درست شد فقط ی سوال چطوری میتونم قبل از ارسال مقادیر به دیتابیس وردوی های رو چک کنم با ajax مثلا میخوام نام و شماره تلفن و آدرس ایمیل رو چک کنم و اگر مقدار وارد نشده بود کنار همون فیلد پیغام داده بشه


<script type="text/javascript">
//<=!=[=C=D=A=T=A=[
var div = 'showresult';
var loadingmessage = '<h2><img src="../images/icon/100/loading.gif" alt="loading" height="32" width="32" /> لطفا کمی صبر کنید...</h2>';
function Ajaxrequest(){
var xmlHttp;
try{
// Firefox, Opera 8.0+, Safari
xmlHttp=new XMLHttpRequest();
return xmlHttp;
}
catch (e){
try{
// Internet Explorer
xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
return xmlHttp;
}
catch (e){
try{
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
return xmlHttp;
}
catch (e){
alert("مرورگر شما از آژاکس پشتیبانی نمی کند!");
return false;
}
}
}
}
function formget(form, url) {
var poststr = getFormValues(form);
postData(url, poststr);
}
function postData(url, parameters){
var xmlHttp = Ajaxrequest();
xmlHttp.onreadystatechange = function(){
if(xmlHttp.readyState > 0 && xmlHttp.readyState < 4){
document.getElementById(div).innerHTML=loadingmess age;
}
if (xmlHttp.readyState == 4) {
document.getElementById(div).innerHTML=xmlHttp.res ponseText;
}
}
xmlHttp.open("POST", url, true);
xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xmlHttp.setRequestHeader("Content-length", parameters.length);
xmlHttp.setRequestHeader("Connection", "close");
xmlHttp.send(parameters);
}
function getFormValues(formobj)
{
var str = "";
var valueArr = null;
var val = "";
var cmd = "";
for(var i = 0;i < formobj.elements.length;i++)
{
switch(formobj.elements[i].type)
{
case "text":
str += formobj.elements[i].name +
"=" + encodeURI(formobj.elements[i].value) + "&";
break;
}
}
str = str.substr(0,(str.length - 1));
return str;
}
//]=]=>
</script>
<script src="//code.jquery.com/jquery-1.10.2.js"></script>
<script src="//code.jquery.com/ui/1.11.4/jquery-ui.js"></script>
<script>
$(function() {
$( "#dialog" ).dialog({
autoOpen: false,
width:600,
height:340,
resizable: false,
modal: true,
buttons: {
"جدید": function() {
$( this ).dialog( "close" );
$('#form1').trigger("reset");
},
"بازگشت": function() {
$( this ).dialog( "close" );
}
},

show: {
effect: "clip",
duration: 1000
},
hide: {
effect: "clip",
duration: 1000
}
});

$( "#opener" ).click(function() {
$( "#dialog" ).dialog( "open" );
});
});
</script>
<div id="dialog" title="وضعیت">
<div id="showresult" style="direction:rtl"></div>
</div>
<form action="" method="post" name="form1" id="form1" onsubmit="return validateForm();">
<input type="hidden" name="lock" value="unlock">

<input type="text" name="name_family" id="name_family" />
<div id="name_family-error" class="error"></div>
<input type="button" name="Send" value="ارسال" onclick="formget(this.form, 'save-form.php');" id="opener"/>
</form>

sinoser
جمعه 30 مرداد 1394, 21:17 عصر
وقت خوندن کدهاتو که ندارم ولی خب معلومه if میذاری :لبخند:
نه شوخی کردم ولی تا اونجا که می دونم برای جی کوئری پلاگین های خیلی زیادی برای این کار هست با یک جستجو و دیدن دموهاشون می تونی اونی که می خوای رو پیدا کنی.
ولی این از همه معروف تره http://jqueryvalidation.org/

mehrvarzan
جمعه 30 مرداد 1394, 22:33 عصر
ولیوهایی که قصد ریست شدنشو رو داری نال کن
$('.name').val()="";