gpt4 book ai didi

javascript - 如何将此 Javascript 函数返回到 HiddenField C# 对象中?

转载 作者:行者123 更新时间:2023-12-02 16:39:31 31 4
gpt4 key购买 nike

我需要将函数 validarCartao() 的返回值放入该 HiddenField 值中。 alert(response.brand.name) 工作正常,但我无法得到这个,即使我将 HiddenField 移动到函数内部。我尝试了很多方法但没有任何效果。我非常感谢您提供的任何帮助。谢谢。

var hiddenBandeiraTemp = document.getElementById('<%=hiddenBandeira.ClientID%>');

hiddenBandeiraTemp.value = validarCartao(tbNumeroCartao.value);

function validarCartao(element) {

var cardNum = element.replace(/[^\d.]/g, '');
var card_invalid = 'Número do cartão inválido.';

if (cardNum.length >= 6) {
PagSeguroDirectPayment.getBrand({
cardBin: cardNum.substr(0, 6),
success: function (response) {
if (typeof response.brand.name != 'undefined') {
alert(response.brand.name); // OK
return response.brand.name; // <<--
} else {
alert(card_invalid);
}
},
error: function (response) {
alert(card_invalid);
}
});
}
}

最佳答案

您放入 success 回调中的 return 语句将返回函数 success() 的值,而不是函数 >validarCartao()

success: function (response) {
if (typeof response.brand.name != 'undefined') {
alert(response.brand.name); // OK
return response.brand.name; // <<--
} else {
alert(card_invalid);
}
}

此外,由于函数 PagSeguroDirectPayment.getBrand() 似乎是异步的,因此不可能在 validarCartao() 内返回其值。在我看来,这将是一个更好的解决方案:

var hiddenCompradorIdTemp = document.getElementById('<%=hiddenCompradorId.ClientID%>');

validarCartao(tbNumeroCartao.value);

function validarCartao(element) {

var cardNum = element.replace(/[^\d.]/g, '');
var card_invalid = 'Número do cartão inválido.';

if (cardNum.length >= 6) {
PagSeguroDirectPayment.getBrand({
cardBin: cardNum.substr(0, 6),
success: function (response) {
if (typeof response.brand.name != 'undefined') {
alert(response.brand.name); // OK
hiddenBandeiraTemp.value = response.brand.name;
} else {
alert(card_invalid);
}
},
error: function (response) {
alert(card_invalid);
}
});
}
}

关于javascript - 如何将此 Javascript 函数返回到 HiddenField C# 对象中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27629603/

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