如果不完整,如何重启Jquery函数

时间:2015-11-09 16:53:55

标签: javascript jquery

如果输入仍为空,用户如果重新点击按钮,我怎样才能重新启动表单

我做了什么: 单击后,它将检查输入为空是否将停止代码并显示警报。但是一旦警报出现,如果我再次重新点击该按钮,它将再次无效!



$(document).ready(function(){
	function requierd()
        {
		$('#allrequierd').addClass("animated");
		$('#allrequierd').addClass("shake");
		$('#alertDanger').removeClass("hide");
		setTimeout( "$('#alertDanger').fadeOut();", 4000);
	}
	
	function pass()
        {
		$('#alertDanger').addClass("hide");
		$('#alertsuccess').removeClass ("hide");
		$('#visitorFullName').val('');
		$('#visitorPhoneNumber').val('');	
		$('#visitorEmail').val('');	
		$('#visitorMsg').val('');					
		$('#alertsuccess').addClass ("animated");
		$('#alertsuccess').addClass ("bounceIn");
		setTimeout( "$('#alertsuccess').fadeOut();", 4000);
	}
	
	$('#sendContactMsg').click(function ()
        {
		var visitorFullName = $('#visitorFullName').val();
		var visitorPhoneNumber = $('#visitorPhoneNumber').val();
		var visitorEmail = $('#visitorEmail').val();
		var visitorMsg = $('#visitorMsg').val();
		var visitorCallMethod = $('#visitorCallMethod').val();
		
		var dataString = 'visitorFullName='+visitorFullName+'&visitorPhoneNumber='+visitorPhoneNumber+'&visitorEmail='+visitorEmail+'&visitorMsg='+visitorMsg+'&visitorCallMethod='+visitorCallMethod;

                if(visitorFullName==''||visitorPhoneNumber==''||visitorEmail==''||visitorMsg=='')
	        {
		     requierd();
		}else{
			// AJAX Code To Submit Form.
			$.ajax({
			type: "POST",
			url: "functions/sContactus.php",
			data: dataString,
			cache: false,
			success: function(result){
//			alert(result);
				if (result == "Success") {
//					alert("DONE");
					pass();
					
				}else {
					alert("Sorry Try Again")
				}
			}
			});
			}
			return (start);
	
	});
   	
   



//	END jquery
});




1 个答案:

答案 0 :(得分:0)

当您第一次触发警报时,您的#alertDanger正在获得.fadeOut(),该格式会对该元素应用内联display:none样式。您不会在任何时候删除内联样式,事实上您也没有添加“隐藏”类,因此您的#alertDanger将保持隐藏状态。

你应该做的是在淡出它之后“重置”警报div:

function removeAlert() {
    $('#alertDanger').fadeOut();
    $('#alertDanger').addClass("hide").css("display","block");
}

在你的required()函数中:

 setTimeout( removeAlert, 4000);