2013-05-22 51 views
0

我有一个页面xyz.jsp其中有一个页面加载脚本,它的工作正常。调用.load不能正常工作

function loginRegOverlay() { 
      $("#hiddenLoginButton").click(); 
     }; 

,但如果我在jQuery的呼吁abc.jsp此页.load页面渲染,但

$("#hiddenLoginButton").click(); is not working. 

不知道为什么它不来的原因。

,请告诉我,xyz.jsp及其工作onload事件,但如果我呼吁abc.jsp它该页面无法正常工作

添加代码是abc.jsp:

function newstyle(){ 
      $("#test").load("xyz.jsp"); 
     }; 

如此, newstyle呼吁abc.HTML的onload渲染罚款

function loginRegOverlay() { 
     $("#hiddenLoginButton").click(); 
    }; 

这是xyz.jsp如果我打电话说上abc.jsp..i工作不细,现在希望它的清晰。

+0

,如果你可以张贴一些HTML渲染过。 – Jai

+0

或者如果你能告诉我们你如何在给定的函数上面调用。 – Jai

+0

你在哪里打电话给你的loginRegOverlay()?在$ .ready中? – TecHunter

回答

0

试一下。 触发

$("#hiddenLoginButton").trigger('click'); 

,我们假定你已经呼吁在页面加载

功能loginRegOverlay()和我注意到,你在xyz.jsp编写代码,并要在触发它abc.jsp则包括xyz.jsp在abc.jsp

inlcude('xyz.jsp'); 

和PLZ makesure那些按钮ID是唯一的BEC xyz是负载在ABC,并且由于在重复他们赢得了IDS t工作,你可以给他们相同的类和火灾一次

+0

xyz.jsp也通过.load在abc.jsp – supersaiyan

+0

也通过。然后,你需要改变该按钮的ID,并单独调用它们,因为重复的ID不允许在jquery – Gautam3164

+0

#hiddenLoginButton其唯一的xyz .jsp不在abc.jsp – supersaiyan

0

​​是一个ajax请求,所以如果你是从其他页面加载元素,然后直接绑定事件元素将无法正常工作。因此,对此的解决方法是事件代理,您必须将事件委托给正从其他页面加载html的现有父项目。

$(document).find('#hiddenLoginButton').click(); 

可以委托给这是可在页面加载的时间最接近的父:

$('#ID or .Class of the parent item').find('#hiddenLoginButton').click(); 

,如:

$('#wrapper').find('#hiddenLoginButton').click(); 

侧面说明:

如果你能够张贴一些呈现的h tml,那么看看会发生什么事情以及建议如何解决这个问题会好得多。

0

您可以使用.live或方法。对事件代表团

$("#hiddenLoginButton").live('click', function(){});