[英]jQuery trigger click on radio not working
我试图触发单选按钮的单击。 我已经在另一个项目上成功完成了此操作,所以我看不到为什么在这种情况下它不起作用。
这是我的HTML(摘自Contact form 7
):
<span class="wpcf7-list-item first">
<label>
<span class="wpcf7-list-item-label">Yes</span>
<input type="radio" name="example-name" value="Yes" checked="checked">
</label>
</span>
<span class="wpcf7-list-item last">
<label>
<span class="wpcf7-list-item-label">No</span>
<input type="radio" name="example-name" value="No">
</label>
</span>
这是我的jQuery:
jQuery(document).ready(function () {
jQuery("#yes-btn").click(function () {
jQuery(this).addClass('checked');
jQuery("input[value='Yes']").trigger('click').addClass("working");
});
jQuery("#no-btn").click(function () {
jQuery(this).addClass('checked');
jQuery("input[value='No']").trigger('click').addClass("working");
});
});
我知道选择器工作正常,因为.addClass()
工作正常。
我也尝试了.prop("checked", true)
而不是trigger("click")
但没有成功。
我正在使用jQuery 3.3.1。
如何解决这个问题?
当您将“单引号”从“是”和“否”更改为“双引号”时,它将起作用。 也可以在“是”和“否”周围不加引号,并且不能像选择器中的单引号一样。
jQuery(document).ready(function() { jQuery("#yes-btn").click(function() { jQuery(this).addClass('checked'); jQuery('input[value="Yes"]').trigger('click').addClass("working"); }); jQuery("#no-btn").click(function() { jQuery(this).addClass('checked'); jQuery('input[value="No"]').trigger('click').addClass("working"); }); });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <span class="wpcf7-list-item first"> <label> <span class="wpcf7-list-item-label">Yes</span> <input type="radio" name="example-name" value="Yes" checked="checked"> </label> </span> <span class="wpcf7-list-item last"> <label> <span class="wpcf7-list-item-label">No</span> <input type="radio" name="example-name" value="No"> </label> </span> <button id="yes-btn">Yes</button> <button id="no-btn">No</button>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.