У меня есть эта функция js, но она всегда возвращает true (даже если проверка прошла успешно и не имеет значения, я установил 2 значения tu false:
что мне не хватает?
function ValidaCajadeTextoVacia(clicked, controlID) {
//para sacar los datos porque estan en una masterpage
var dynCtrl = clicked.id.substring(0, clicked.id.lastIndexOf("_") + 1);
var tBox = document.getElementById(dynCtrl + controlID);
var CajaSinEspacios = jQuery.trim(tBox.value);
//alert(CajaSinEspacios);
//return false;
if (CajaSinEspacios.length == 0) {
alert('en blanco');
return false;
}
else {
alert('lleno');
return false; //true
}
}
Извините, я нашел свою ошибку
У меня была функция БЕЗ ВОЗВРАТА НА HTML
<asp:ImageButton ID="imgBtnGuardar" runat="server" ImageUrl="~/imagenes/boton.guardar.jpg" OnClientClick="ValidaCajadeTextoVacia(this,'txt_rol');MensajeCargandoJQUERY();" />
и правильная форма
<asp:ImageButton ID="imgBtnGuardar" runat="server" ImageUrl="~/imagenes/boton.guardar.jpg" OnClientClick="return ValidaCajadeTextoVacia(this,'txt_rol');MensajeCargandoJQUERY();" />
function ValidaCajadeTextoVacia(clicked, controlID) { //para sacar los datos porque estan en una masterpage var validar = false; var dynCtrl = clicked.id.substring(0, clicked.id.lastIndexOf("_") + 1); var tBox = document.getElementById(dynCtrl + controlID); var CajaSinEspacios = jQuery.trim(tBox.value); //alert(CajaSinEspacios); //return false; if (CajaSinEspacios.length == 0) { //alert('en blanco'); } else { //alert('lleno'); validar = true; } return validar; }
Убедитесь, что вы вызываете его следующим образом:
onclick="return ValidaCajadeTextoVacia()"
ИЛИ для кнопки asp.net:
onClientClick="return ValidaCajadeTextoVacia()"