附在HTML& JS。需要逻辑。
请根据所需的逻辑给我一个改变href的解决方案。
由于
HTML:
<input type="checkbox" class="js-check" id="rt-check--one" name="rt-check"> Test element 1
<input type="checkbox" class="js-check" id="rt-check--two" name="rt-check"> Test element 2
<input type="checkbox" class="js-check" id="rt-check--three" name="rt-check"> Test element 3
<a tabindex="33" href="#/Test1" class="rt-button js-button--down">Next</a>
JS:
$('#rt-check--one').change(function(){
if(($('#rt-check--one').is(':checked')) || ($('#rt-check--one').is(':checked') && $('#rt-check--two').is(':checked')) || ($('#rt-check--one').is(':checked') && $('#rt-check--three').is(':checked'))){
$('a').attr("href", "#/Test1");
} else{
$('a').attr("href", "#/Test1");
}
});
$('#rt-check--two').change(function(){
if(($('#rt-check--two').is(':checked')) || ($('#rt-check--two').is(':checked') && $('#rt-check--three').is(':checked'))){
$('a').attr("href", "#/Test2");
} else{
$('a').attr("href", "#/Test2");
}
});
答案 0 :(得分:2)
我会做这样的事情:
<input type="checkbox" class="js-check" data-href=""> Test element 1
<input type="checkbox" class="js-check" data-href=""> Test element 2
<input type="checkbox" class="js-check" data-href=""> Test element 3
JS:
$(".js-check").on("change", function() {
if ($(this).prop("checked"))
{
$("a").attr("href", $(this).data("href"))
}
})
答案 1 :(得分:0)
您可以将名称更改为rt-check-1
,rt-check-2
等,并验证是否按此方式进行了检查 -
$('input[name="rt-check-1"]:checked')
。
答案 2 :(得分:0)
正如@Mark所述,您的情况最好是使用data-*
attribute。
然后根据第一个href
复选框更新:checked
:
$(".js-check").change(function() {
var href = $(".js-check:checked").first().attr("data-url") || 'Test1';
$("a").attr('href', href)
// FOR DEMO:
.text(href);
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="checkbox" class="js-check" id="rt-check--one" name="rt-check" data-url="Test1"> Test element 1
<input type="checkbox" class="js-check" id="rt-check--two" name="rt-check" data-url="Test2"> Test element 2
<input type="checkbox" class="js-check" id="rt-check--three" name="rt-check" data-url="Test3"> Test element 3
<p>
<a tabindex="33" href="#/Test1" class="rt-button js-button--down">Next</a>
</p>
&#13;