从ASP中调用JavaScript.. NET MVC部分视图

Call JavaScript from within an ASP.NET MVC Partial View

本文关键字:MVC 视图 NET JavaScript ASP 调用      更新时间:2023-09-26

我已经创建了一个ASP。. NET MVC部分视图,我通过HTML调用它。动作辅助方法:

@Html.Action("GetMyPartialView", "MyController", new { myParameter})

部分视图包含一个需要调用一些JavaScript的控件(外部JavaScript文件中的JavaScript库)。我如何在我的局部视图中调用这个JavaScript代码呢?

我尝试在局部视图中使用脚本元素:

<script>
    MyJavaScriptFunction();
</script>

这不起作用。可能外部JavaScript文件(例如jQuery)当时还没有加载。

当部分视图被渲染时,推荐的执行JavaScript代码的方法是什么?

不能在分部视图中使用java脚本节。它们根本不起作用。因此,将@section JavaScript保留在主视图中以便注册脚本然后呈现部分视图

我也有类似的情况。我所做的是在主视图中添加javascript。你试着在主视图中添加javascript从你调用

 @Html.Action("GetMyPartialView", "MyController", new { myParameter})

您可以使用ajax调用来实现这一点。

$(document).ready(
    //Do ajax call  
        $.ajax({
        type: 'GET',
        url: "controller action url",    
        data : {                          
                  //Data need to pass as parameter                       
               },           
        dataType: 'html', //dataType - html
        success:function(result)
        {
           //Create a Div around the Partial View and fill the result
           $('#partialViewContainerDiv').html(result);                 
        }

//行动

       public ActionResult GetMyPartialView(int myParameter)    
       {    
         //return partial view instead of View   
          return PartialView("YourView", resultSet);   
        }

我刚刚遇到了这个问题。你可以在分部视图中调用分部视图中的javascript函数。我创建了一个隐藏字段,并定义了onclick事件来调用在局部视图中初始化对话框所需调用的函数。然后我触发了那个隐藏字段的click事件。

局部视图中的代码:

 <input type="hidden" id="initializeDialog" onclick="initializeDialog();" />
<script>
    function initializeDialog(){
        // Do stuff
    }
</script>

包含视图的代码:

<script>
    $('#InitializeDialog').trigger('click');
</script>