我有一个引用jquery + jqueryui的母版页。一切安好。 在内容页面,我把:在内容页面中,jquery文档就绪事件在内容页面加载之前触发
$(document).ready(function() {
$("#tabs").tabs();
});
事实证明就绪事件触发的内容页面的HTML装入前:/。 那么,如何确定整个内容页面何时加载?
编辑这是我的标记:
母版页:
<form runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server">
<Scripts>
<asp:ScriptReference Path="~/Scripts/jquery-1.4.1-vsdoc.js" />
<asp:ScriptReference Path="~/Scripts/jquery-ui-1.8.2.custom.min.js" />
</Scripts>
</asp:ScriptManager>
内容页:
<div id="tabs">
<div id="whatWorkedWellDiv">
<fieldset>
<legend>What Worked Well</legend>
<br />
<label for="user">
Name</label>
<input type="text" name="user" value="" /><br />
<label for="emailaddress">
Email Address:</label>
<input type="text" name="emailaddress" value="" /><br />
<label for="comments">
Comments:</label>
<textarea name="comments"></textarea><br />
<label for="terms">
Agree to Terms?</label>
<input type="checkbox" name="terms" class="boxes" /><br />
<input type="submit" name="submitbutton" id="submitbutton" value="Submit" />
</fieldset>
</div>
<div id="whatCouldHaveGoneBetterDiv">
<fieldset>
<legend>What could have gone better</legend>
<br />
<label for="user">
Name</label>
<input type="text" name="user" value="" /><br />
<label for="emailaddress">
Email Address:</label>
<input type="text" name="emailaddress" value="" /><br />
<label for="comments">
Comments:</label>
<textarea name="comments"></textarea><br />
<label for="terms">
Agree to Terms?</label>
<input type="checkbox" name="terms" class="boxes" /><br />
<input type="submit" name="submitbutton" id="submit1" value="Submit" />
</fieldset>
</div>
</div>
的Jscript:
$(文件)。就绪(函数(){ $( “#选项卡”)的选项卡(); });
我用标记更新了我的问题。 我没有做任何动态加载或框架/ iframes ... – 2010-06-07 09:22:37
@Vladimir:你在哪里插入你的JavaScript?你有没有尝试在'.ready()'中做一个简单的'alert()'或者访问一个DOM元素? – jAndy 2010-06-07 09:29:18
javascript被插入到一个单独的文件中。 问题在于当加载母版页时,而不是在内容页被加载时,文档就绪被执行。 – 2010-06-07 09:35:54