使用 renderpartial 将参数传递到 .aspx 页面

发布于 2024-08-13 22:06:33 字数 2362 浏览 6 评论 0原文

在我的 index.aspx 页面中,我想使用 renderpartial 渲染另一个 module.aspx 页面 然后渲染一个 .htm 文件 取决于从index.aspx传递哪个参数(它将是数字,即1,2等,以便每次根据参数调用不同的不同.htm文件)

1)。 现在我希望 Index.aspx 页面呈现 module.aspx 并向其传递参数(1,2,3 等) [参数将以编程方式传递(硬编码)] 和 2)。 mudule.aspx 应该捕获参数,并根据它调用

我的 index.aspx 具有的

  <% ViewData["TemplateId"] = 1; %>
  <% Html.RenderPartial("/Views/Templates/MyModule.aspx", ViewData["TemplateId"]); %>

.htm 文件,并且 module.aspx 包含

 <%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage" %>
<script type="text/javascript" src="/Scripts/jquery-1.3.2.js"></script>
<script type="text/javascript" src="/Scripts/Service.js"></script> 

<script type="text/javascript">


        debugger;
        var tid = '<%=ViewData["TemplateId"] %>';

        $.get("/Templates/Select/" + tid, function(result) {
            $("#datashow").html(result);
        });



</script>

<div id="datashow"></div> 

这是我的控制器,由 $.get(....) 调用(参见代码)

public ActionResult Select(int id)
    {
        return File("/Views/Templates/HTML_Temp" +id.ToString()+".htm" , "text/html");

    }

,最后 我的 .htm 文件

<div  id="divdata" class="sys-template">
<p>Event Title:<input  id="title"  size="150" type="text" 
        style="background-color:yellow;font-size:25px;width: 637px;"  
        readonly="readonly" value="{{title}}" />
    </p>   


<p>Event Description:<input type="text" id="description" value="{{ description }}"  
    readonly="readonly" style="width: 312px" /></p>

<p>Event Date: <input type="text" id="date" value="{{ date }}" readonly="readonly" 
        style="width: 251px"/></p>
<p>Keywords : <input type="text" id="keywords" value="{{keywords}}" readonly="readonly" /></p>
   </div>

<script type="text/javascript">
    Sys.Application.add_init(appInit);
    function appInit() {
        start();
    }
</script>

start() 是 javascript 方法,该方法位于文件 Service.js 中,

当我运行此程序时,它给我错误 Node.js 运行时错误:“预期对象” 和突出显示的调试器

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/**xhtml**1-strict.dtd">

请帮助我解决问题

in my index.aspx page i want to render another module.aspx page using renderpartial
which then render a .htm file
depanding on which parameter is passed from index.aspx (it would be number ie 1,2 etc ,so as to call different different .htm file everytime depending on the parameter)

1).
now i want Index.aspx page to render module.aspx and pass it a parameter(1,2,3,etc)
[the parameters would be passed programatically (hardcoded)]
and
2).
mudule.aspx should catch the parameter and depending on it will call .htm file

my index.aspx has

  <% ViewData["TemplateId"] = 1; %>
  <% Html.RenderPartial("/Views/Templates/MyModule.aspx", ViewData["TemplateId"]); %>

and module.aspx contains

 <%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage" %>
<script type="text/javascript" src="/Scripts/jquery-1.3.2.js"></script>
<script type="text/javascript" src="/Scripts/Service.js"></script> 

<script type="text/javascript">


        debugger;
        var tid = '<%=ViewData["TemplateId"] %>';

        $.get("/Templates/Select/" + tid, function(result) {
            $("#datashow").html(result);
        });



</script>

<div id="datashow"></div> 

this is my controller which is called by $.get(....) (see code)

public ActionResult Select(int id)
    {
        return File("/Views/Templates/HTML_Temp" +id.ToString()+".htm" , "text/html");

    }

and finally
my .htm file

<div  id="divdata" class="sys-template">
<p>Event Title:<input  id="title"  size="150" type="text" 
        style="background-color:yellow;font-size:25px;width: 637px;"  
        readonly="readonly" value="{{title}}" />
    </p>   


<p>Event Description:<input type="text" id="description" value="{{ description }}"  
    readonly="readonly" style="width: 312px" /></p>

<p>Event Date: <input type="text" id="date" value="{{ date }}" readonly="readonly" 
        style="width: 251px"/></p>
<p>Keywords : <input type="text" id="keywords" value="{{keywords}}" readonly="readonly" /></p>
   </div>

<script type="text/javascript">
    Sys.Application.add_init(appInit);
    function appInit() {
        start();
    }
</script>

start() is javascript method which is in file Service.js

when i run this programm it gives me error
js runtime error: 'object expected'
and debugger highlighted on

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/**xhtml**1-strict.dtd">

pls help me solve the problem

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

楠木可依 2024-08-20 22:06:33

像这样使用 <% Html.RenderPartial("/Views/Templates/MyModule.ascx", Model); %>用于使用 Model 将值传递到部分视图 MyModule.ascx。您还可以使用 Html.RenderAction 方法

Use like this <% Html.RenderPartial("/Views/Templates/MyModule.ascx", Model); %> for passing the values using Model to a partial view MyModule.ascx. You can also use the method Html.RenderAction

世界如花海般美丽 2024-08-20 22:06:33

当您使用 RenderPartial 时,默认情况下会传递您的模型索引.aspx。然后,您的部分视图可以是相同类型的。然后,您可以使用 Model.MyParameter 找出应渲染哪个 htm 文件。否则,您可以将其传递到 RenderPartial 的对象参数中,并在局部视图内查询该对象。

When you use RenderPartial, you are by default passing the Model of your Index.aspx. Your partial view can then be of the same type. You can then use Model.MyParameter to find out which htm file you should be rendering. Otherwise you can pass it in the object parameter of the RenderPartial, and query that object inside of your partial view.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文