Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用jquery获取facebox div中元素的值_Javascript_Jquery_Css - Fatal编程技术网

Javascript 使用jquery获取facebox div中元素的值

Javascript 使用jquery获取facebox div中元素的值,javascript,jquery,css,Javascript,Jquery,Css,我的页面上有两个div标签,如下所示。当我引用itemName元素的值时,使用$'itemName'.val;这两个div中都有,我总是得到第一个div中元素的值,它是空的。有没有一种方法可以使用jquery获取第二个div(即facebox)中itemName元素的值 资讯组 <div id="info" style="display: none;"> <center> <strong>Name</strong> <input id="it

我的页面上有两个div标签,如下所示。当我引用itemName元素的值时,使用$'itemName'.val;这两个div中都有,我总是得到第一个div中元素的值,它是空的。有没有一种方法可以使用jquery获取第二个div(即facebox)中itemName元素的值

资讯组

<div id="info" style="display: none;">
<center>
<strong>Name</strong>
<input id="itemName" type="text"/>
<br/>
<br/>
<strong>Price  </strong>
<input id="itemPrice" type="text"/>
<br/>
<br/>
</center>
</div>
脸谱室

<div id="facebox" style="top: 27.3px; left: 478px; display: none;">
<div class="popup">
<table>
<tbody>
<tr>
</tr>
<tr>
<td class="b"/>
<td class="body">
<div class="content" style="display: block;">
<div id="info" style="">
<center>
<strong>Name</strong>
<input id="itemName" type="text"/>
<br/>
<br/>
<strong>Price  </strong>
<input id="itemPrice" type="text"/>
<br/>
<br/>
<input type="button" onclick="updateTab();" value="Add"/>
</center>
</div>
</div>

谢谢

文档中的元素id必须是唯一的。您的文档无效,这是后果之一


利用a,它是一种廉价的QA形式,可以很容易地获取一些低挂果实。

文档中的元素id必须是唯一的。您的文档无效,这是后果之一


利用a,这是一种廉价的QA形式,可以很容易地获取一些低挂果实。

ID在页面上必须是唯一的-简单的答案是您需要重命名其中一个

如果您真的无法更改它们,那么您可以使用以下内容:

$('#facebox input[type=text]:first').val();

ID在页面上必须是唯一的-简单的答案是您需要重命名其中一个ID

如果您真的无法更改它们,那么您可以使用以下内容:

$('#facebox input[type=text]:first').val();

如果查看facebox.js内部,您将看到在facebox打开时会触发一个事件,因此您只需绑定到该事件,然后获取值:

$(document).bind('reveal.facebox', function() { 
 $('#facebox #itemName').val();
})

如果查看facebox.js内部,您将看到在facebox打开时会触发一个事件,因此您只需绑定到该事件,然后获取值:

$(document).bind('reveal.facebox', function() { 
 $('#facebox #itemName').val();
})

谢谢你的回复,格雷格。问题是第二个div是使用facebox插件生成的,而第一个div就是它用来生成这个div的。问题是,第二个div是使用facebox插件生成的,而第一个div是它用来生成该div的。由于facebox内容是根据您选择的内容动态创建的,所以验证器不会捕捉到这一点。使用类而不是ID可能更好。但我认为他真正的问题是在facebox被披露后从中获取数据——这就是我的答案所在。验证器不会捕捉到这一点,因为facebox内容是根据您选择的内容动态创建的。使用类而不是ID可能更好。但我认为他真正的问题是在数据被披露后从facebox获取数据——这就是我的答案。谢谢!你帮我省去了几个小时的头痛。谢谢!你刚刚帮我省去了几个小时的头痛。