Javascript 显示div何时获得select或option
我有一个信息页面和编辑页面的应用程序 信息页面显示信息。 在编辑页面中,我有带有selectbox等的字段 我想对两者使用相同的代码。所以我试过了Javascript 显示div何时获得select或option,javascript,jquery,Javascript,Jquery,我有一个信息页面和编辑页面的应用程序 信息页面显示信息。 在编辑页面中,我有带有selectbox等的字段 我想对两者使用相同的代码。所以我试过了 if($('#product').has('option')) { console.log('hasSelect') } else{ console.log('NOSELECTNO') } 在单个页面中,没有可用的选项或选择 但在编辑中是这样的 我如何确保它能工作(为什么不工作) 编辑此2: var attr = $('#p
if($('#product').has('option'))
{
console.log('hasSelect')
}
else{
console.log('NOSELECTNO')
}
在单个页面中,没有可用的选项或选择
但在编辑中是这样的
我如何确保它能工作(为什么不工作)
编辑此2:
var attr = $('#product div').attr('select');
if (typeof attr !== typeof undefined && attr !== false) {
console.log("welmetselect")
}
else
{
console.log("zonderselect")
}
编辑:HTML
<div id= product>
<div>some more divs</div>
<div> in 1 of the div we have <select><option></option></select></div>
</div>
再来几杯
我们有一个分区
和html信息页
<div id= product>
<div>only information</div>
<div>only text </div>
</div>
唯一信息
仅文本
我想你需要这样的东西:
if ($("#product option").length )
如果您没有选项,长度将为0(因此为false)首先,您可以给他们不同的ID,或者像
.info
和这样的类,编辑,只需选中$(“#产品”).hasClass('info')
。无论如何,我不建议检查特定的子代来识别元素,因为您希望您的代码尽可能灵活,并且如果您决定在将来将select元素添加到您的信息页面,例如,过滤掉要获取信息的特定项,那么您的代码将完全中断
第二,为什么你的代码不起作用,是这样的
var attr = $('#product div').attr('select');
select
不是属性,而是子项。使用children('select')
(如果是直接子级)或find('select')
(如果不是直接子级)
作为旁注,您可以简化attr!==未定义的类型到属性的类型!='undefined'
因为我们已经知道undefined的typeof
正在返回'undefined'
你能给我们看一些HTML吗?我不太明白是的这对你的时间来说对METHNX有效