Jquery 两美元一个功能。ajax成功
我想使用一个函数将数据发送到服务器 例如,用户单击电子邮件地址的复选框以通过电子邮件发送文档,然后单击“发送电子邮件”按钮调用sendemailfax()函数。但是,如果要传真文档,会出现一个弹出窗口,供用户选择传真号码,然后单击“发送传真”按钮,它还会调用sendemailfax()函数Jquery 两美元一个功能。ajax成功,jquery,Jquery,我想使用一个函数将数据发送到服务器 例如,用户单击电子邮件地址的复选框以通过电子邮件发送文档,然后单击“发送电子邮件”按钮调用sendemailfax()函数。但是,如果要传真文档,会出现一个弹出窗口,供用户选择传真号码,然后单击“发送传真”按钮,它还会调用sendemailfax()函数 function sendemailfax(url) { $.ajax({ type : 'POST', url : "sendDoc.php", dataTy
function sendemailfax(url)
{
$.ajax({
type : 'POST',
url : "sendDoc.php",
dataType: 'json',
data : { emailAddresses: emails, faxNumbers: getFaxNumbers(), url: url, lname: lname, fname: fname }, // Data to be sent
success: function(data){
if( data.success )
{
alert("Email/Fax sent successfully");
}
else
{
alert("There was a mistake, try again");
}
},
error: function(req, status, error) {
console.log( 'something went wrong', status, err);
}
});
}
发生的事情是,如果我只想发送传真,我会收到错误,因为电子邮件是空的
我想使用一个函数而不是复制代码来获得不同的成功消息或错误
我不知道如何使用同一个函数调用,并且根据是传真还是电子邮件来分别成功。有时电子邮件是空的,有时传真是空的。创建两个javascript函数,并针对ajax回调调用它们
function funcSuccess(data) {
console.log(data);
if( data.success ) {
alert("Email/Fax sent successfully");
} else {
alert("There was a mistake, try again");
}
}
function funcError( req, status, error ) {
console.log( 'something went wrong', status, err);
}
在你的ajax中
$.ajax({
type : 'POST',
url : "sendDoc.php",
dataType: 'json',
data : {
emailAddresses: emails,
faxNumbers: getFaxNumbers(),
url: url,
lname: lname,
fname: fname
}, // Data to be sent
// here are the two functions
success: funcSuccess,
error: funcError
});
对邮件和传真发出两个单独的ajax请求
$.ajax({
type : 'POST',
url : "sendDoc.php",
dataType: 'json',
data : {
emailAddresses: emails,
url: url,
lname: lname,
fname: fname
}, // Data to be sent
success: EmailSuccess,
error: EmailError
});
及
像这样试试
function sendemailfax(url,paramData,successCallback,failureCallback)
{
$.ajax({
type : 'POST',
url : "sendDoc.php",
dataType: 'json',
data : paramData, // Data to be sent
success: function(data){
if($.isFunction(successCallback)){successCallback(data);}
},
error: function(req, status, error) {
if($.isFunction(failureCallback)){failureCallback(req, status, error);}
}
});
}
如何使用
function postData("sendDoc.php",{ emailAddresses: emails, faxNumbers: getFaxNumbers(), url: url, lname: lname, fname: fname },
function(data){
//on success
},function(req, status, error){
//on error
})
1.尝试在ajax调用外部初始化值 2.使用if条件检查电子邮件值或传真值是否为空
function sendemailfax(url)
{
var fax_no=getFaxNumbers();//initialize the fax number here*
if(emails=="")
{
emails=0;
}
if(fax_no=="")
{
fax_no=0;
}
else{
$.ajax({
type : 'POST',
url : "sendDoc.php",
dataType: 'json',
data : { emailAddresses: emails, faxNumbers: fax_no,
url: url, lname: lname, fname: fname }, // Data to be sent
success : function(data){
if( data.success )
{
alert("Email/Fax sent successfully");
}
else
{
alert("There was a mistake, try again");
}
},
error: function(req, status, error) {
console.log( 'something went wrong', status, err);
}
});
} }
出于某种原因,仍然会收到一封电子邮件的弹出窗口。我正在检查服务器json_编码消息
function sendemailfax(url)
{
var fax_no=getFaxNumbers();//initialize the fax number here*
if(emails=="")
{
emails=0;
}
if(fax_no=="")
{
fax_no=0;
}
else{
$.ajax({
type : 'POST',
url : "sendDoc.php",
dataType: 'json',
data : { emailAddresses: emails, faxNumbers: fax_no,
url: url, lname: lname, fname: fname }, // Data to be sent
success : function(data){
if( data.success )
{
alert("Email/Fax sent successfully");
}
else
{
alert("There was a mistake, try again");
}
},
error: function(req, status, error) {
console.log( 'something went wrong', status, err);
}
});
} }