0

作为将 ASPX 页面转换为 Razor MVC5 页面的一部分,我遇到了在我们的应用程序中使用的 Kendo Tabstrip,它在 aspx 中具有以下语法

tabstrip.Add()
                                                .Text(item.Title)
                                                //.HtmlAttributes(new { tabindex = "-1" })
                                                .Selected(true)
                                                .Content(() =>
                                                { 
                                                    %> 
                                                    <div style="width:980px; min-height:562px; margin-left:0px; margin-right:0px">
                                                    <% 
                                                    using (Html.BeginForm(null, null, FormMethod.Post, new { id = "tabForm" }))
                                                    {%>
                                                            <div>
                                                                <%: Html.ValidationSummary(false)%>
                                                                <asp:ContentPlaceHolder ID="MainContent" runat="server" />
                                                            </div>
                                                            <div style="padding-top:30px; text-align:center;">

</div>
                                                            <%: Html.Hidden("NextActionHelper", Model.NextActionHelper)%>
                                                            <%: Html.Hidden("UserFormAction", Model.UserFormAction)%>

                                                        <%
                                                    }
                                                        %>
                                                    </div>
                                                <%
                                                });

当我使用下面的代码时,我得到一个分号丢失错误,这是剃刀,但我想知道正确的标签来使 div 有效。那就是我在第一个 div 标记之前使用@,就在 .Content 之后,这似乎无效,但除非我把它放在那里,否则 div 显示为带有波浪线的自由文本。使剃刀识别 div 标签的正确语法是什么?

tabstrip.Add()
                                .Text(item.Title)
                                .Selected(true)
                                .Content(() =>
                                {
                                    @<div style="width:980px; min-height:562px; margin-left:0px; margin-right:0px">

                                    @using (Html.BeginForm(null, null, FormMethod.Post, new { id = "tabForm" }))
                                    {
                                    <div>
                                        @Html.ValidationSummary(false)
                                        @RenderBody()
                                    </div>
                                    <div style="padding-top:30px; text-align:center;">
Some stuff in between
</div>
                                        @Html.Hidden("NextActionHelper", Model.NextActionHelper)
                                        @Html.Hidden("UserFormAction", Model.UserFormAction)
                                    }
                                    </div>



                        });
4

1 回答 1

0

试试下面的代码。它使用“内容”方法的另一个重载。

tabstrip.Add()
        .Text(item.Title)
        .Selected(true)
        .Content(
                 @<text>
                 <div style="width:980px; min-height:562px; margin-left:0px; margin-right:0px">

                                @using (Html.BeginForm(null, null, FormMethod.Post, new { id = "tabForm" }))
                                {
                                <div>
                                    @Html.ValidationSummary(false)
                                    @RenderBody()
                                </div>
                                <div style="padding-top:30px; text-align:center;">
                                   Some stuff in between
                                </div>
                                    @Html.Hidden("NextActionHelper",Model.NextActionHelper)
                                    @Html.Hidden("UserFormAction",Model.UserFormAction)
                                }
                                </div>
                     </text>
                    );
于 2017-06-14T20:24:15.013 回答