2015-07-28 2 views
-1

как упростить следующий скрипт (jquery).Как упростить скрипт для проверки цели

Первый код проверяет наличие «отмеченного» и показывает соответствующее поле или поле «Нет».

Второй код здесь, если пользователь изменяет этот параметр.

$(document).ready(function(){ 
 
if ($("#Check_0").is(":checked")){ 
 
    $('#field_2, #field_1').addClass('hidden') 
 
} 
 
if ($("#Check_1").is(":checked")){ 
 
    $('#field_2').addClass('hidden') 
 
\t $('#field_1').removeClass('hidden') 
 
} 
 
if ($("#Check_2").is(":checked")){ 
 
    $('#field_1').addClass('hidden') 
 
\t $('#field_2').removeClass('hidden') 
 
} 
 

 
$('#Check_0').change(function() { 
 
    if ($(this).is(':checked')) { 
 
    $('#field_1, #field_2').addClass('hidden'); 
 
    } 
 
}); 
 
$('#Check_1').change(function() { 
 
    if ($(this).is(':checked')) { 
 
    $('#field_2').addClass('hidden'); 
 
\t $('#field_1').removeClass('hidden'); 
 
    } 
 
}); 
 
$('#Check_2').change(function() { 
 
    if ($(this).is(':checked')) { 
 
    $('#field_1').addClass('hidden'); 
 
\t $('#field_2').removeClass('hidden'); 
 
    } 
 
}); 
 
});
.hidden {display:none;}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.2/jquery.min.js"></script> 
 

 
<input type="radio" name="Check" value="none" id="Check_0" checked="checked" /> none 
 
<input type="radio" name="Check" value="one" id="Check_1" /> one 
 
<input type="radio" name="Check" value="two" id="Check_2" /> two 
 
<div id="field_1"> 
 
<p>one <input type="text" class="input" /></p> 
 
</div> 
 

 
<div id="field_2"> 
 
<p>two <input type="text" class="input" /></p> 
 
</div>

+0

вы можете просто использовать '$ ('вход [имя = "Проверка"]'). (На 'изменить', функция() {// код}) ; ' – Sushil

ответ

2
$(document).ready(function() { 
    var fn = function() { 
     for (var i = 1; i <= 2; ++i) 
      $('#field_'+i)[$("#Check_"+i).is(":checked") ? "removeClass" : "addClass"]('hidden'); 
    }; 
    fn(); 
    $('#Check_0, #Check_1, #Check_2').change(fn); 
}); 
+0

Он работает отлично! Благодаря! – jhopper

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