Не получается установить програмно значение радио
HTML:
<input type=radio name="sops" value='1' f='jpg' id='s1' > <input type=radio name="sops" value='2' f='jpg' id='s2'> <input type=radio name="sops" value='3' f='png' id='s3'> Код:
var r = $('input:radio[name=sops]');
r.on("change",chCurrPics);
var v='[value='+game.sops+']';
r=r.filter(v);
console.log('setup-filtered',r);
r.attr('checked',true);
console.log('setup-filtered-proped:',r);
Вообще-то при помощи отладочной печати, я вижу, что правильное значение устанавливается, но ВИЗУАЛЬНО никак это не проявляется. Что я делаю не так? Заранее благодарю |
Цитата:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=windows-1251' />
<script src='http://code.jquery.com/jquery-latest.js'></script>
<!--
<script src="https://code.angularjs.org/1.3.9/angular.min.js"></script>
<script src="https://code.angularjs.org/1.3.9/angular-route.js"></script>
-->
<style type='text/css'>
</style>
<script type='text/javascript'>
$(function(){
alert('Start');
$('#s1').click();
alert(1);
$('#s2').prop('checked',true);
alert(2);
$('#s3').attr('checked', 'checked');
alert(3);
})
</script>
</head>
<body>
<input type=radio name="sops" value='1' f='jpg' id='s1' >
<input type=radio name="sops" value='2' f='jpg' id='s2'>
<input type=radio name="sops" value='3' f='png' id='s3'>
</body>
</html>
|
Первый и второй варианты работают, но не третий (Firefox)
А у меня в коде по-прежнему не работает ни один. Ищу баг. Отвечу по-позже А какой вариант правильный для мультиплатформ? |
$('#s2').prop('checked',true);
$('#s3').attr('checked', 'checked'); А оно нужно? Ведь вполне достаточно:
$('input').prop('checked', 1);
$('input').prop('checked', 0);
//или
$('input').prop('checked', !1);
//ведь установить можно даже так
$('input').prop('checked', 'Хочу чтобы было щелкнуто :)');
//правда другое хочу тупые браузеры не понимают, нет в них ничего человеческого
$('input').prop('checked', 'А теперь хочу не надо :(')
|
Цитата:
|
Цитата:
|
Нет, у меня почему-то не работает. Появляется только когда я нажимаю 'refresh' кнопку.
В ваших примерах я не вижу чтобы вы использовали фильтр, а у меня он есть. Может в этом дело? |
Цитата:
|
Цитата:
А КАК выложить? Не нахожу... |
<td ><span title="Simple pictures"><input type=radio name="sops" value='1' f='jpg' id='s1' ><label for='s1'><img src='images/1/favicon.ico' width=20 /></label></span></td> <td ><span title="Three-stripes pictures"><input type=radio name="sops" value='2' f='jpg' id='s2'><label for='s2'><img src='images/2/favicon.ico' width=20 /></label></span></td> <td ><span title="Complex pictures"><input type=radio name="sops" value='3' f='png' id='s3'><label for='s3'><img src='images/3/favicon.ico' width=20 /></label></span></td>
setup ()
...
$('input:radio[name=sops]').on("change",chCurrPics); //работает -- функция вызывается на клик
// следующее не работает
$("input:radio[name=sops]:checked").prop('checked',0);
var id='s'+game.sops;
$(id).prop('checked',1);
'''
}
Нажатие кнопки обновления браузера - устанавливает правильно... |
| Часовой пояс GMT +3, время: 11:19. |