C# 部分加载时运行Javascript/Jquery

C# 部分加载时运行Javascript/Jquery,c#,javascript,ajax,asp.net-mvc,asp.net-mvc-4,C#,Javascript,Ajax,Asp.net Mvc,Asp.net Mvc 4,所有示例/答案似乎都显示了在页面加载时运行partial的javascript 页面加载时不加载此部分。。。稍后将使用AJAX在单击按钮时加载它 我试过我的JS 内部: $(document).ready(function () { 以及: 以及: 独自 第一个根本不会触发。第二页和第三页似乎在第二页加载时触发。我假设,因为我的js影响的div将存在。因此,如何使其在部分加载时运行。如果要使其在部分加载时运行,请在发出部分加载请求的任何对象的回调中执行。如果此请求颁发者是Jquery,则类似于

所有示例/答案似乎都显示了在页面加载时运行partial的javascript

页面加载时不加载此部分。。。稍后将使用AJAX在单击按钮时加载它

我试过我的JS

内部:

$(document).ready(function () {
以及:

以及:

独自


第一个根本不会触发。第二页和第三页似乎在第二页加载时触发。我假设,因为我的js影响的div将存在。因此,如何使其在部分加载时运行。

如果要使其在部分加载时运行,请在发出部分加载请求的任何对象的回调中执行。如果此请求颁发者是Jquery,则类似于以下内容:

$.get(url, function (result) {
    // Do whatever you want here in the success callback.
});
如果您正在使用MVC助手方法(如Ajax.ActionLink)执行某些操作,则可以指定jquery函数来调用响应

@Ajax.ActionLink("NameOfLink", "ControllerAction", new AjaxOptions
{
    HttpMethod = "GET",
    OnSuccess = "javascriptFunction(data)"
})

function javascriptFunction(data) {
    // Do whatever you want
}

如果您想让它在加载分部时运行,请在发出分部请求的任何对象的回调中执行该操作。如果此请求颁发者是Jquery,则类似于以下内容:

$.get(url, function (result) {
    // Do whatever you want here in the success callback.
});
如果您正在使用MVC助手方法(如Ajax.ActionLink)执行某些操作,则可以指定jquery函数来调用响应

@Ajax.ActionLink("NameOfLink", "ControllerAction", new AjaxOptions
{
    HttpMethod = "GET",
    OnSuccess = "javascriptFunction(data)"
})

function javascriptFunction(data) {
    // Do whatever you want
}
将在加载页面时触发(更具体地说是$(document).ready连接到document.DOMContentLoaded或window.loaded事件),但由于使用ajax加载分部,因此加载分部时已触发页面加载事件

如果您使用jQuery通过ajax加载部分页面,我建议您从

$ajax(...
}).done(function ( data ) {
    yourFunction();
});
或者,如果使用AjaxHelper类(例如,使用razor@Ajax.ActionLink(…),则使用其AjaxOption的OnSuccess或OnComplete属性连接javascript函数。就像下面这样:

@Ajax.ActionLink("Load partial", "MyPartialAction", new AjaxOptions
{
    UpdateTargetId="partialContainer",
    OnSuccess="partialLoaded"
}
此代码将从MyPartialAction操作返回的分部加载到具有“partialContainer”id的标记中,并在加载分部后加载名为partialLoaded的javascript函数

将在加载页面时触发(更具体地说是$(document).ready连接到document.DOMContentLoaded或window.loaded事件),但由于使用ajax加载分部,因此加载分部时已触发页面加载事件

如果您使用jQuery通过ajax加载部分页面,我建议您从

$ajax(...
}).done(function ( data ) {
    yourFunction();
});
或者,如果使用AjaxHelper类(例如,使用razor@Ajax.ActionLink(…),则使用其AjaxOption的OnSuccess或OnComplete属性连接javascript函数。就像下面这样:

@Ajax.ActionLink("Load partial", "MyPartialAction", new AjaxOptions
{
    UpdateTargetId="partialContainer",
    OnSuccess="partialLoaded"
}

此代码将从MyPartialAction操作返回的部分加载到具有“partialContainer”id的标记中,并在加载部分后,加载名为partialLoaded的javascript函数。

您可以发布更多代码吗?此处没有足够的代码来确定您的问题$(function(){应该在动态javascript中工作,因为我在几个项目中使用了它。我认为是其他原因导致了这一问题。您可以发布更多的代码吗?这里没有足够的代码来确定您的问题。$(function(){应该在动态javascript中工作,因为我在几个项目中使用了它。我认为是其他原因导致了这一问题。)