为啥jQuery将单选按钮的值返回为“ON”?如何纠正它?
Posted
技术标签:
【中文标题】为啥jQuery将单选按钮的值返回为“ON”?如何纠正它?【英文标题】:Why jQuery returning value of radio buttons as "ON"? How to correct it?为什么jQuery将单选按钮的值返回为“ON”?如何纠正它? 【发布时间】:2021-08-22 01:57:54 【问题描述】:我不是绝对的新手,但不知何故,我从一个小时后就被抓住了。你能帮我找出我在下一篇文章中犯错的地方吗?我正在尝试返回“选中/选择”单选选项的值,并且每次都返回“打开”。
我的(引导)html 代码:
<div class="form-row mb-4 p-2 text-center font-weight-bold rounded-top shadow-sm-dark no-shadow-hover bl__home_apr-choice">
<div class="col-4 offset-2 col-md-3 offset-md-0 mb-md-0 mb-1">
<div class="custom-control custom-radio custom-control-inline">
<input type="radio" id="searchByProject" name="searchBy" class="custom-control-input" checked="checked">
<label class="custom-control-label" for="searchByProject" value="Project" pointer>by Project</label>
</div>
</div>
<div class="col-4 col-md-3 offset-md-0 mb-md-0 mb-1">
<div class="custom-control custom-radio custom-control-inline">
<input type="radio" id="searchByInvoiceID" name="searchBy" class="custom-control-input">
<label class="custom-control-label" for="searchByInvoiceID" value="Invoice" pointer>by Invoice</label>
</div>
</div>
<div class="col-4 offset-2 col-md-3 offset-md-0 mb-md-0">
<div class="custom-control custom-radio custom-control-inline">
<input type="radio" id="searchByStartDate" name="searchBy" class="custom-control-input">
<label class="custom-control-label" for="searchByStartDate" value="Started" pointer>by Start Date</label>
</div>
</div>
<div class="col-4 col-md-3 offset-md-0 mb-md-0">
<div class="custom-control custom-radio custom-control-inline">
<input type="radio" id="searchByEndDate" name="searchBy" class="custom-control-input">
<label class="custom-control-label" for="searchByEndDate" value="Ended" pointer>by End Date</label>
</div>
</div>
</div>
这就是我使用 jQuery 的方式:
console.log($('input[name=searchBy]:checked').val());
任何帮助将不胜感激。提前致谢。
【问题讨论】:
为每个收音机添加value
属性<input type="checkbox" value="XXX"/>
仅供参考 "on"
是单选按钮的默认值
哦,这就是问题所在。谢谢@charlietfl 指出。这是您的快速帮助。万分感谢!你帮了大忙。上帝保佑你。
【参考方案1】:
你应该在input
标签中设置value
,你是在label
中做的。
<input type="radio" id="searchByEndDate" name="searchBy" value="Ended" checked>
【讨论】:
非常感谢...我刚刚从@charlietfl 学到了这一点。这是我犯的愚蠢错误。再次感谢。以上是关于为啥jQuery将单选按钮的值返回为“ON”?如何纠正它?的主要内容,如果未能解决你的问题,请参考以下文章