gpt4 book ai didi

javascript - Ajax从函数获取验证,然后将响应传递给另一个ajax?

转载 作者:行者123 更新时间:2023-12-03 02:40:36 26 4
gpt4 key购买 nike

我有一个 ajax 函数来验证我页面上的文本框,然后我需要用该值做一些事情(在数据库中搜索并在文本框中显示结果)。然后,我需要另一个不同函数的验证函数。所以..

        function validarRut(textBox) {
var resultado;
$.ajax({
type: "POST",
url: "AgendarInduccion.aspx/validarRut",
data: "{rut:" + JSON.stringify(textBox) + "}",
contentType: "application/json; charset=utf-8",
dataType: "json",
async: false,
success: function(response){
alert("valido");
},
failure: function (response) {
alert("ERROR");
}
});

}

这是验证函数(有效!):以及在数据库中搜索的功能:

 function buscarEmpresa(textBox) {
var res;
res = validarRut(textBox.value); // I need the result, to works with this function.!


alert("VALOR" + res);
if (res) {
var resultado;
$.ajax({
type: "POST",
url: "/AgendarInduccion.aspx/buscarEmpresa",
data: "{RutEmpresa:" + JSON.stringify(textBox.value) + "}",
contentType: "application/json; charset=utf-8",
dataType: "json",
async: false,
success: function (response) {
resultado = response.d;
var nombre = resultado[0];
var razonSocial = resultado[1];
var direccion = resultado[2];
if (nombre == "nulo") {
alert("El Rut de la Empresa No se ha Encontrado en Nuestra Base de Datos, favor de ingresar!");
// crear empresa!
// la institucion no existe; se debe crear una!
//btGuardar.Visible = true;
//btCancelar.Visible = true;

//txtRutEmpresa.Enabled = false;
//txtNombreEmpresa.Enabled = true;
//txtRazonSocial.Enabled = true;
//txtDireccion.Enabled = true;
document.getElementById('<%= txtRutEmpresa.ClientID %>').disabled = true;
document.getElementById('<%= txtNombreEmpresa.ClientID %>').disabled = false;
document.getElementById('<%= txtRazonSocial.ClientID %>').disabled = false;
document.getElementById('<%= txtDireccion.ClientID %>').disabled = false;

$('#<%= txtRazonSocial.ClientID%>').val(razonSocial); //razon social desde SII

document.getElementById('<%=btGuardar.ClientID %>').style.display = 'inline';
document.getElementById('<%=btCancelar.ClientID %>').style.display = 'inline';
document.getElementById('<%=btActualizar.ClientID %>').style.display = 'none';




} else {
$('#<%= txtNombreEmpresa.ClientID%>').val(nombre);
$('#<%= txtRazonSocial.ClientID%>').val(razonSocial);
$('#<%= txtDireccion.ClientID%>').val(direccion);
}
},
failure: function () {
alert('No Realizado.');
}

});
}
}

我有一个使用“function validarRut(textBox)”的第三个函数;所以我不想把搜索功能放在成功中,因为我需要重新使用该功能。有什么帮助吗?PD: async: false 不适合我。

最佳答案

这是我的解决方案!非常感谢

    function buscarEmpresaPromise(textBox) {
var res;
validarRutPromise(textBox.value).then(function (res) {
if (res.d) {
alert(">hola");
alert("Rut validado CORRECTAMENTE");
} else {
alert("Rut invalido, vuelva a ingresar porfavor: " + textBox.value);

}
})
}

以及其他代码,即验证 True 或 False:

    function validarRutPromise(textBox) {
var promise = new Promise(function (resolve, reject) {
$.ajax({
type: "Post",
url: "AgendarInduccion.aspx/validarRut",
data: "{rut:" + JSON.stringify(textBox) + "}",
contentType: "application/json; charset=utf-8",
dataType: "json",
complete: function (response) {
resolve(response);
},
fail: function (response) {
reject(response);
}
});
})
return promise;
}

关于javascript - Ajax从函数获取验证,然后将响应传递给另一个ajax?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48343210/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com