首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >JQuery返回元素为null

JQuery返回元素为null
EN

Stack Overflow用户
提问于 2013-12-12 15:39:06
回答 3查看 186关注 0票数 0

Rails 3.我有一个div id,我试图根据选中的复选框的值隐藏或显示。我的脚本现在无法通过id获取元素。它返回null。我试过输入id和名称。都返回null。

下面是脚本:

代码语言:javascript
运行
复制
$(document).ready(function() {
$('#device').change(function(event){ 
var hardware = document.getElementById('#survey_hardware_');
if (($(hardware).find("input[value='IP Phones']:checked").length) || ($(hardware).find("input[value='IP PBX Systems']:checked").length))
{
    $('#phonepbx').css('display', 'inline');
}
else
{
    $('#phonepbx').css('display', 'none');
}
});
});

这是呈现的HTML问题:

代码语言:javascript
运行
复制
<div class="row" id="device">
<ul>1.  What IP hardware does your company frequently sell and/or install?  (select all that apply)<br/>
<li style="display:block;"><input id="survey_hardware_" name="survey[hardware][]" type="checkbox" value="IP Phones" /> IP Phones</li>
<li style="display:block;"><input id="survey_hardware_" name="survey[hardware][]" type="checkbox" value="IP PBX Systems" /> IP PBX Systems </li>
<li style="display:block;"><input id="survey_hardware_" name="survey[hardware][]" type="checkbox" value="IP Security/Surveillance Systems" /> IP Security/Surveillance Systems</li>
<li style="display:block;"><input id="survey_hardware_" name="survey[hardware][]" type="checkbox" value="IP infrastructure (cabling, switches...etc.)" /> IP infrastructure (cabling, switches...etc.)</li>
</ul>
</div>

摘要:

代码语言:javascript
运行
复制
document.getElementById('#survey_hardware_');

返回null。我尝试了#监控硬件和#监控硬件,所有这些都是空的。我怎么得到元素?谢谢(请不要恨我的李造型:)

溶液

代码语言:javascript
运行
复制
function checkHardware() {
if ($('#device input:checkbox:eq(0)').is(':checked') || $('#device input:checkbox:eq(1)').is(':checked'))
{
    $('#phonepbx').css('display', 'block');
}

等等。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-12-12 15:40:32

试着不使用“#”:

代码语言:javascript
运行
复制
document.getElementById('survey_hardware_');

或者直接使用jQuery:

代码语言:javascript
运行
复制
$('#survey_hardware_')
票数 2
EN

Stack Overflow用户

发布于 2013-12-12 15:42:30

你为什么要使用getElementById呢?您有jquery,所以请使用:

代码语言:javascript
运行
复制
$("#survey_hardware_").find(
票数 1
EN

Stack Overflow用户

发布于 2013-12-12 15:47:39

类似于:(请注意新的和独特的id)

代码语言:javascript
运行
复制
<li style="display:block;"><input id="phones" name="survey[hardware][]" type="checkbox" value="IP Phones" /> IP Phones</li>
<li style="display:block;"><input id="pbx" name="survey[hardware][]" type="checkbox" value="IP PBX Systems" /> IP PBX Systems </li>
<li style="display:block;"><input id="security" name="survey[hardware][]" type="checkbox" value="IP Security/Surveillance Systems" /> IP Security/Surveillance Systems</li>
<li style="display:block;"><input id="infra" name="survey[hardware][]" type="checkbox" value="IP infrastructure (cabling, switches...etc.)" /> IP infrastructure (cabling, switches...etc.)</li>

然后直接使用jQuery :已经建议的$('#new_id_here')

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20547728

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档