2014-01-22 3 views
2

У меня есть скрытый div, который имеет текстовое поле, которое становится видимым, когда «other» выбран из выпадающего списка.Показать текстовое поле на выпадающем списке выберите и подтвердите

То, что я пытаюсь сделать, это проверить его. Когда выбрано другое, оно должно проверять поле текстового поля и не допускать отправки формы.

Я уже пробовал, но не разрешает отправку формы, когда текстовое поле скрыто.

function validateForm() 
{ 
var x=document.forms["form1"]["textbox"].value; 
if (x==null || x=="") 
{ 
alert("Text box be filled out"); 
return false; 
} 
} 

Что я могу сделать, чтобы проверить поле текстового поля только тогда, когда другого выбран и не проверяю, когда другого не выбран, и текстовое поле скрыто

Вот мой код

<head> 
<script src="../Library/jqueryLatest.js"></script> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>Untitled Document</title> 
</head> 

<body> 
<form action="index.cfm" method="post" name="form1"> 
<select name="description" id="description"> 
<option value="Type 1">Type 1</option> 
<option value="Type 2">Type 2</option> 
<option value="Type 3">Type 3</option> 
<option value="Other">Other</option> 
</select> 
<div id="Other" class="showother" style="display:none">Hello <input name="textbox" id="textbox" type="text"> 
</div> 
<input name="submit" value="SUBMIT" type="submit"> 
</form> 

</body> 
<script type="text/javascript"> 

$(function() { 
$('#description').change(function() { 
    $('.showother').hide(); 
    $('#' + $(this).val()).show(); 
}); 
}); 

</script> 

ответ

0

Обновлено

function validateForm(){ 
    var x= $("form input#textbox").val(); 
    if ($('.showother').is(":visible")) { 
    if (x==null || x=="") 
    { 
    alert("Text box be filled out"); 
    return false; 
    } 
    } 
} 
$(document).ready(function(){ 
$('#description').change(function() { 

    if ($(this).val() == "Other") { 
     $('.showother').show(); 
    } else { 
     $('.showother').hide(); 
    } 

}); 
}); 

Демонстрация http://jsfiddle.net/27Syr/643/

+0

Спасибо, но это то, что мне нужно для начала. Это пытается проверить скрытое поле. То, что я пытаюсь сделать, - это ... Не проверять, когда текстовое поле скрыто и только подтверждать, когда оно показано. – user2912702

+0

@ user2912702: Обновлен ответ. – suren

Смежные вопросы