【发布时间】:2014-12-23 23:39:47
【问题描述】:
我需要将函数 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);
}
});
}
}
【问题讨论】:
-
你不能从异步函数返回,除非你返回一个承诺。在成功处理程序中使用响应
-
请@charlietfl 你能告诉我怎么做吗? 'hiddenBandeiraTemp.value = response.brand.name;'不工作。谢谢
标签: javascript c# asp.net hiddenfield