使用 load() 加载同样使用 jQuery 的页面

Posted

技术标签:

【中文标题】使用 load() 加载同样使用 jQuery 的页面【英文标题】:using load() to load page that also uses jQuery 【发布时间】:2010-09-09 00:36:38 【问题描述】:

我正在尝试加载一个页面,该页面基本上是一个编辑表单 对话框(ui.dialog)。我可以从外部加载这个页面(我是 使用 asp.net) 页面。

问题是在我的“弹出”表单中,我需要在页面加载时使用$(function() my function here); 语法来做一些事情, 以及为一些动态下拉列表注册一些.fn 扩展 使用 ajax 调用。

我已经创建了我的<script type="text/javascript" src="jquery.js"> 但是 我不认为这些被包括在内,我的$(function) 也不包括在内 被调用。

这可能吗,或者我需要找到另一种方法吗? 完成我需要做的事情?

【问题讨论】:

你是说需要弹出表单层中的jQuery文档加载事件来执行吗?所以,换句话说,你正在将一个完整的 html 页面加载到一个 DIV 弹出窗口中,但是你正在加载的那个页面没有执行 load 事件? 您需要澄清您的问题 - 给我们一些示例代码(调用页面、被调用等)以便我们提供帮助。 【参考方案1】:

如果您确实需要通过 AJAX 加载该表单,您可以在 $.ajax 回调本身中执行所有 Javascript 内容。 因此,您可以像这样加载弹出表单:

$.ajax(
   //...
   success: function(text) 
       // insert text into container
       // the code from $(function() );
   
);

【讨论】:

【参考方案2】:

脚本没有运行,因为文档的 ready 事件已被触发。从

中删除您的代码
$()

【讨论】:

如果 ready 已经被触发,对 $(function() ) 的调用将立即触发【参考方案3】:

使用 livequery 插件。

它允许您将事件绑定到稍后可能加载的元素:http://brandonaaron.net/docs/livequery/

【讨论】:

以上是关于使用 load() 加载同样使用 jQuery 的页面的主要内容,如果未能解决你的问题,请参考以下文章

使用 jquery.load() 函数加载角度页面

jquery load加载动态页面

通过 .load() 加载数据后使用 JQuery UI 的 sortable('serialize');

jQuery.load()事件使用方法详解

可以使用 jQuery.load() 函数加载 ASCX 吗?

JS 脚本不适用于使用 jQuery 的 .load() 加载的 div