我有一个包含50个左右选择回复的表单。回答可以是是,否,不适用。这50个回答是20个div中的一组。有些div有一个响应,有些有多个。
我想做什么,对于每个div,我想确定至少有一个响应被选为no的div。我将使用该div值显示/隐藏另一个div,用于在我们的提问行中收集用户响应。
以下是相关问题:jQuery - If ANY Select within a div has a value
从那里开始,这里的代码只是确定div是否有一个带有“No”响应的问题。代码正确地循环遍历包含响应元素的每个div(如页面警报中所示)。但是,检测对选择值的“否”响应的代码不起作用:
jq('[id$=LARBlock]').each( function() {
var flag = true;
jq('select').each(function(){
if( jq(this).val() === 'No' ) {
//alert("No selected a value in " + jq(this).attr("name"));
flag = false;
return false;
}
});
if(flag){
alert('should show for this block ' + jq(this).attr("id"));
}else{
alert('should not show for this block ' + jq(this).attr("id"));
//e.preventDefault();
}
});
答案 0 :(得分:2)
使用值No
定位所有选择,然后然后找到ID最终为LARBlock的最近元素:
$('select[value="No"]').closest('[id$="LARBlock"]'). stuff()