2014-09-26 23 views
-2

现在我正在一个简单的HTML/Jquery页面上工作。 在我的代码我试图专用重载 这里是我的代码,检查出来,请:jQuery iframe通过许多具有相同ID的元素重新加载?

<script type="text/javascript"> 
$(document).ready(function() { 
$("#Reload").each(function(index) { 
    $(this).on("click", function(){ 
    $('#IframeReload')[0].contentWindow.location.reload(true); 
    }); 
}); 
}); 
</script> 

这里是HTML代码:

<iframe id="IframeReload" src="suggestions.php?id=<?PHP echo $membid;?>" target="_parent">Browser not compatible.</iframe> 


<div id="Reload" class="tooltip1" style="cursor:pointer;"></div> 
<div id="Reload" class="tooltip2" style="cursor:pointer;"></div> 
<div id="Reload" class="tooltip3" style="cursor:pointer;"></div> 

正如你可以看到我有很多元素ID为“重新加载”。 有了这段代码示例,当我只按第一个显示的元素与id“重新加载”的iframe重新加载像supose重新加载,但是当我点击任何其他div元素与id“重新加载”只是什么都没有发生,这就是问题。

如何让我的jQuery代码通过点击ID为“Reload”的每个元素来重新加载iframe?

在此先感谢!

+4

'IDs'应该是唯一的。期。 – melancia 2014-09-26 17:46:39

+0

而不是ID使用类然后在类上绑定事件。它会工作。 ID应该是唯一的。 – 2014-09-26 17:50:56

回答

-1

您需要页面中每个元素的唯一ID。你应该做的是创建一个重载页面的JavaScript函数,然后将每个div上的click监听器分配给该函数。

另一种方法是使用ID,而不是使用ID,可以使用普通类,然后为该类设置click侦听器。

+0

说话,说话,无代码。这是一个不完整的答案。我建议你在投票开始之前调整它。 – melancia 2014-09-26 17:53:57

0

问题在于你如何引用。

$("#Reload") 

上述代码选择具有该ID的第一个元素。

$("[id=Reload]") 

这将允许您选择具有相同ID的所有元素。

你应该做的是按类名应用事件 - 这将是更整洁。

<div class="reload tooltip1" style="cursor:pointer;"></div> 
<div class="reload tooltip2" style="cursor:pointer;"></div> 
<div class="reload tooltip3" style="cursor:pointer;"></div> 

<script type="text/javascript"> 
    $(document).ready(function() { 
     $('.reload').on("click", function(){ 
      $('#IframeReload')[0].contentWindow.location.reload(true); 
     }); 
    }); 
</script> 

您应该保持元素ID属性的唯一性。

0

标识在页面上应该是唯一的。

<div class="reload tooltip1" style="cursor:pointer;"></div> 
<div class="reload tooltip2" style="cursor:pointer;"></div> 
<div class="reload tooltip3" style="cursor:pointer;"></div> 

<script type="text/javascript"> 
    $(document).ready(function() { 
     $('.reload').click(function(){ 
      $('#IframeReload')[0].contentWindow.location.reload(true); 
     }); 
    }); 
</script> 
相关问题