我试图设计一个锻炼网站,根据用户选择从数据库返回练习。我正在编写一些测试代码,如果选中“Arms”复选框,则在单击按钮时将更改地址栏中的URL。但是,它似乎没有工作,所以你能提供的任何帮助将不胜感激:
JAVASCRIPT
<script>
function getSelection(){
if(document.getElementById('armsCheck').is(':checked')){
window.location.search = "";
window.location.href = window.location.href + "?bodypart=Arms";
}else{
return;
}
}
</script>
HTML
<form>
<input type="checkbox" id="armsCheck" />Arms<br />
<input type="button" value="Submit" onClick="getSelection()" />
</form>
答案 0 :(得分:1)
您正在尝试在DOM对象上调用jQuery is()
方法,该对象没有。如果您查看浏览器的JavaScript控制台,这将是显而易见的。
检查checked
属性。
if(document.getElementById('armsCheck').checked){
同样替换这些行:
window.location.search = "";
window.location.href = window.location.href + "?bodypart=Arms";
使用:
window.location.search = "?bodypart=Arms";
由于第一行会在到达第二行之前触发页面重新加载。
尽管如此,根本不需要涉及JavaScript。您可以使用纯HTML获得相同的效果。
<form>
<label><input type="checkbox" name="bodypart" value="Arms"> Arms</label>
<input type="submit" value="Submit">
</form>
答案 1 :(得分:0)
解决了它。 'getSelection()'不是有效的函数名称 - 感谢您的帮助!