Javascript 选择框架内的所有html选择元素
我拥有html文档的以下结构:Javascript 选择框架内的所有html选择元素,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我拥有html文档的以下结构: <frameset cols="25%,50%,25%"> <frame name="name1" src="frame_a.htm"> <frame name="name2" src="frame_b.htm"> </frameset> 但这没有帮助。 此外,我尝试提醒帧,它起作用了: jQuery("frame[name='name1']").each(function( index )
<frameset cols="25%,50%,25%">
<frame name="name1" src="frame_a.htm">
<frame name="name2" src="frame_b.htm">
</frameset>
但这没有帮助。
此外,我尝试提醒帧,它起作用了:
jQuery("frame[name='name1']").each(function( index ) {
alert("test1");
} );
但当尝试警告所有选定元素时,它不会:
jQuery( "select" ).each(function( index ) {
alert("test2");
});
注意:我使用以下方式加载代码:
<script>
jQuery(document).ready(function() {
//here I put JavaScript code
});
</script>
jQuery(文档).ready(函数(){
//在这里,我放置了JavaScript代码
});
试试看
你应该试试
$("frame[name='name1']").contents().find("select")
像这样试试
#("frame[name='name1']).contents().find("select").each(function( index ) {
var elementID = jQuery(this).attr('id');
alert(elementID);
});
#("frame[name='name1']").find('select').contents().find("select").each(function( index ) {
var elementID = jQuery(this).attr('id');
alert(elementID);
});
我所发现的,如果我错了,请纠正我 首先,我将代码放入主html文档的元素中。它看起来像:
<head>
<script type="text/javascript" src="lib/jquery-1.10.2.min.js"></script>
<script>
// put JavaScript code here
</script>
</head>
<frameset cols="25%,50%">
<frame name="name1" src="frame_a.htm">
<frame name="name2" src="frame_b.htm">
</frameset>
第二。我必须将所有JavaScript代码移动到子html文件中。在我的例子中,它们是frame_a.htm
和frame_b.htm
。现在每个文件都有以下JavaScript代码:
jQuery(document).ready(function() {
for( var i = 0; i < parent.frames.length; ++i )
{
if( parent.frames[i].name == "name2" && self === parent.frames[i])
{
jQuery("select").each(function( index ) {
var elementID = jQuery(this).attr('id');
alert( elementID );
});
}
}
});
jQuery(文档).ready(函数(){
对于(变量i=0;i
也许还有另一个更有效的解决方案,但这一个解决了我的问题。框架-是邪恶的,请尝试不要使用它们:)您的选项对我不起作用:(无法理解为什么。以下选项会发出警报:jQuery(“frame[name='name1']”)。each(function(index){alert(“test1”);});但当我尝试为每个select元素发出警报时,它不起作用:jQuery(“select”)。each(function(index){alert(“test2”);});需要帮助:)@Alexandr,因为
select
元素不在当前文档根目录中,我看到了不同的文档。那么,如何找出你原来的选择没有帮助的原因呢?有什么建议吗?
$("frame[name='name1']").contents().find("select")
#("frame[name='name1']).contents().find("select").each(function( index ) {
var elementID = jQuery(this).attr('id');
alert(elementID);
});
#("frame[name='name1']").find('select').contents().find("select").each(function( index ) {
var elementID = jQuery(this).attr('id');
alert(elementID);
});
<head>
<script type="text/javascript" src="lib/jquery-1.10.2.min.js"></script>
<script>
// put JavaScript code here
</script>
</head>
<frameset cols="25%,50%">
<frame name="name1" src="frame_a.htm">
<frame name="name2" src="frame_b.htm">
</frameset>
jQuery("frame[name='name1']").load( function() { ...}
jQuery(document).ready(function() {
for( var i = 0; i < parent.frames.length; ++i )
{
if( parent.frames[i].name == "name2" && self === parent.frames[i])
{
jQuery("select").each(function( index ) {
var elementID = jQuery(this).attr('id');
alert( elementID );
});
}
}
});