jquery - 无法比较jquery中的两个字符串
问题描述
有人可以帮我解决这个问题吗?我的html代码是
<div class="py-2 h5"><b>1 can arbitration agreement be in oral?</b></div>
<div class="ml-md-3 ml-sm-3 pl-md-5 pt-sm-0 pt-3 mcq activated" id="options">
<label class="options">Yes<input type="radio" class="radio" name="radio1"> <span class="checkmark"></span></label>
<label class="options">no<input type="radio" class="radio" name="radio1"> <span class="checkmark"></span></label>
<label class="options">yes, if turnover is below 10 Lakhs<input type="radio" class="radio" name="radio1"> <span class="checkmark"></span></label>
<label class="options">None of the above<input type="radio" class="radio" name="radio1"> <span class="checkmark"></span></label>
<label class="options reveals"><p class="radio reveal text-center btn btn-info">no</p></label>
</div>
我的jQuery代码是
$('.radio').click(function(){
$(this).parents(".options").parent().addClass('activated');
var selected = ($(this).parent().text());
var answer = ($(this).closest(".mcq").find(".reveal").text());
if(selected === answer){
alert("yes");
}else{
alert("nope");
}
});
例如,在这种情况下,我想要的输出应该是每当用户单击第二个单选选项即“否”时,它应该使用最后一个单选选项检查答案,即“否”,如果两者都匹配,那么我应该得到一个警报(“是”)。我一直在为此苦苦挣扎。非常感谢任何帮助
解决方案
您必须删除<input>
字段和<span>
. .text()
获取所有标签之间的所有文本,因此您在示例中想要的答案是“否”而不是“否”:
$('.radio').click(function(){
$(this).parents(".options").parent().addClass('activated');
var selected = ($(this).parent().text());
var answer = ($(this).closest(".mcq").find(".reveal").text());
if(selected === answer){
alert("yes");
}else{
alert("no");
}
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="py-2 h5"><b>1 can arbitration agreement be in oral?</b></div>
<div class="ml-md-3 ml-sm-3 pl-md-5 pt-sm-0 pt-3 mcq activated" id="options">
<label class="options">Yes<input type="radio" class="radio" name="radio1"><span class="checkmark"></span></label>
<label class="options">no<input type="radio" class="radio" name="radio1"><span class="checkmark"></span></label>
<label class="options">yes, if turnover is below 10 Lakhs<input type="radio" class="radio" name="radio1"><span class="checkmark"></span></label>
<label class="options">None of the above<input type="radio" class="radio" name="radio1"><span class="checkmark"></span></label>
<label class="options reveals"><p class="radio reveal text-center btn btn-info">no</p></label>
</div>
推荐阅读
- javascript - NodeJS + Socket.IO:访问房间变量的问题
- java - java,帮助使用HM(hashmap)&提高效率。用给定的数组和给定的数字在 HM 中正确放置重复和不重复的数字
- c++ - {fmt} 只替换字符串中的一个位置参数几个位置参数
- corda - 如何在corda中实现可查询状态?
- android - Android exo 播放器实例无法正常工作?
- python - TypeError: 'dict_values' 和 dict_key 对象不可下标
- c# - 未处理的异常处理程序在 VS 2019 中不起作用
- sql - (HANA SQL) 在一行中显示多个值
- python - 什么会导致 VAE(Variational AutoEncoder)在训练后输出随机噪声?
- java - Discord Bot 无法发送消息