2012-12-23 40 views
-1

我试图检索使用“标题”属性值TD检索从一个IFrame里面的一张桌子一个特定的TD,但不能似乎得到它使用下面的代码示例的工作:如何使用jQuery选择

var iframe = $("#iframe1"); 
var tr = iframe.contents().find("td[title='2015-02-06']").text(); 
alert(tr); 

以下是我测试代码的HTML源代码。最好我希望代码在选择器中使用表id,因为我在iframe中有其他表。 有什么想法吗?

<iframe id=iframe1> 
<TABLE id=table1> 
<TBODY> 
<TR> 
<TD title=2015-02-01>1</TD> 
<TD title=2015-02-02>2</TD> 
<TD title=2015-02-03>3</TD> 
<TD title=2015-02-04>4</TD> 
<TD title=2015-02-05>5</TD> 
<TD title=2015-02-06>6</TD> 
<TD title=2015-02-07>7</TD> 
</TR> 
<TR> 
<TD title=2015-02-08>8</TD> 
<TD title=2015-02-09>9</TD> 
<TD title=2015-02-10>10</TD> 
<TD title=2015-02-11>11</TD> 
<TD title=2015-02-12>12</TD> 
<TD title=2015-02-13>13</TD> 
<TD title=2015-02-14>14</TD> 
</TR> 
<TR> 
<TD title=2015-02-15>15</TD> 
<TD title=2015-02-16>16</TD> 
<TD title=2015-02-17>17</TD> 
<TD title=2015-02-18>18</TD> 
<TD title=2015-02-19>19</TD> 
<TD title=2015-02-20>20</TD> 
<TD title=2015-02-21>21</TD> 
</TR> 

    </TBODY> 
    </TABLE> 
    </iframe> 
+0

它应该工作;您只需确保在进行此特定查询时已经加载了“iframe”内容。 – raina77ow

+0

测试了以下代码:[http://jsfiddle.net],并且警报消息为空。 – stack

回答

1

iframe应该嵌入documents但不plain HTML。把html放在某个文件中假设test.html并将该文档导入到iframe中,然后你的选择器将带上这些内容。

IFRAME元素允许作者在一段文本中插入一个框架。在一段文本中插入一个内嵌框架就像通过OBJECT元素插入一个对象:它们都允许你在另一个中插入一个HTML文档,它们都可以与周围文本等对齐,你可以阅读更多在w3.org

您可以检查您选择的工作here

+0

感谢Adil,正如Blender指出的那样好。我想知道的是,如果这个选择器在iframe中有效,就像Blender对标题属性发表评论一样..... – stack

+0

检查你的选择在这里,http://jsfiddle.net/9cFpe/ – Adil

+0

感谢Adil,它的工作原理现在可以在一个(真实的)iframe中使用它,代码看起来像使用表id一样吗? – stack

-1

为什么不用“id”属性替换TD中的“标题”并直接使用它。

HTML:

<TD id="2015-02-06">6</TD> 

的jQuery:

$("#2015-02-06").text(); 
+0

id属性已经被用于其他的东西,我把它清理出来之后再粘贴在这里,使其易于阅读,因为它被认为是一个相当长的字符串....值得 – stack

1

元素不应该有什么inside of them

一个IFRAME埃尔ement从来没有后备内容,因为它总是会创建一个嵌套的浏览上下文 ,无论是否成功使用了指定的初始内容 。 iframe元素的

后裔代表什么。(在传统用户 不支持iframe元素的代理商,内容将 解析为标记,可以作为备用内容。)

我不知道为什么你在使用iframe第一名。这看起来像是一个<div>标签的作业,但是如果您绝对需要iframe中的内容,请将该HTML放入新文件中,并将iframe的src属性更改为指向它。并且title属性不属于iframe元素。使用data-属性(data-date也许?)或id

+0

感谢Blender澄清