[英]JS function not changing URL in address bar
我正在嘗試設計一個健身網站,該健身網站會根據用戶選擇從數據庫返回健身操。 我正在編寫一些測試代碼,如果選中了“武器”復選框,則在單擊按鈕時會更改地址欄中的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>
您試圖在一個沒有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>
解決了。 “ getSelection()”不是有效的函數名稱-感謝您的幫助!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.