【发布时间】:2014-11-07 05:54:40
【问题描述】:
我正在尝试检测是否像这样检查单选按钮:
$(document).ready(function(){
if($("#id_weight_goal_type_1").is(':checked')) { alert("1 its checked"); }
});
我的 html 看起来像:
<input checked="checked" class="rd-input" id="id_weight_goal_type_1" name="weight_goal_type" type="radio" value="1" />
问题是警报永远不会触发。我的语法错了吗?在其他示例中,这包含在更改函数中,但我希望它检查页面加载。
没有控制台错误。
【问题讨论】:
-
使用开发者工具进行调试时是否有任何 javascript 错误?
-
您发布的 HTML 和 jQuery 对我有用:demo;那么您的实时页面有什么不同?
-
Nothing wrong with the code。此处未显示一些情有可原的情况,例如:javascript 错误、缺少 jquery 库、其他与 jQuery 冲突的库需要
$命名空间为jQuery(function($){..etc -
您的代码看起来不错,但是您实现它的方式只会在文档加载时执行一次。如果您想检测单选按钮的状态何时在选中和未选中之间发生变化,则需要绑定单选按钮的事件,例如单击事件。
-
您通过#id 定位元素,您的页面上是否有可能存在具有此ID 的另一个元素?如上所述,您的代码有效,您的代码也适用于我。此外,请确保在运行 javascript 时您的元素存在(在 DOM 中)。尝试
console.log($("#id_weight_goal_type_1"));并确保记录的元素是您期望的元素。
标签: javascript jquery html radio-button