Html.TextAreaFor在asp.net mvc的 [英] Html.TextAreaFor in asp.net mvc

查看:1060
本文介绍了Html.TextAreaFor在asp.net mvc的的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个asp.net mvc的观点,即允许用户在一个textarea输入一些描述。

有,我面临两个问题。

或者当我展开它不移动其他HTML元素扩大textarea的,或我不能够让创建Html.TextBoxFor()多行文本框。任何人都可以提出一个解决的办法?如果使用textarea的如何使它展开(增长的大小),使得它不与其他元件或如何为多行使用Html.TextBoxFor()?重叠

这是我的code的样子

 <使用%(Html.BeginForm())
        {%GT;
     <%:Html.ValidationSummary(真)%GT;    <&字段集GT;        < D​​IV CLASS =主编LABEL1>
            <%:Html.LabelFor(型号=> Model.PackageID)%GT;
        < / DIV>
        < D​​IV CLASS =编辑字段1>
             <%:Html.HiddenFor(型号=> Model.PackageID)%GT;
              <%:Html.DisplayFor(型号=> Model.PackageID)%GT;
             <%:Html.ValidationMessageFor(型号=> Model.PackageID)%GT;
        < / DIV>         < D​​IV CLASS =主编LABEL1>
            <%:Html.LabelFor(型号=> Model.PackageName)%GT;
        < / DIV>
        < D​​IV CLASS =编辑字段1>
            <%:Html.TextBoxFor(型号=> Model.PackageName)%GT;
            <%:Html.ValidationMessageFor(型号=> Model.PackageName)%GT;
        < / DIV>        < D​​IV CLASS =主编LABEL1>
            <%:Html.LabelFor(型号=> Model.PackageDesc)%GT;
        < / DIV>
        < D​​IV CLASS =编辑字段1的风格=填充底:50像素;保证金底:150像素>
            <%:Html.TextBoxFor(型号=> Model.PackageDesc,新{=的TextMode TextBoxMode.MultiLine,COLS =55,行=10})%GT;            <%:Html.ValidationMessageFor(型号=> Model.PackageDesc)%GT;
        < / DIV>         < D​​IV CLASS =主编LABEL1>
            <%:Html.LabelFor(型号=> Model.PackageTitle)%GT;
        < / DIV>
        < D​​IV CLASS =编辑字段1>
            <%:Html.TextBoxFor(型号=> Model.PackageTitle)%GT;
            <%:Html.ValidationMessageFor(型号=> Model.PackageTitle)%GT;
        < / DIV>
        < D​​IV CLASS =编辑标记>
            <%:Html.Label(项目ID)%GT;
        < / DIV>
        < D​​IV CLASS =主编场>
            <%:Html.DropDownList(专案编号(IEnumerable的< SelectListItem>)计算机[项目])%GT;
        < / DIV>
         < D​​IV>
                <输入类型=提交值=保存编辑/>
         < / DIV>
    < /字段集>
    <%}%GT;


解决方案

渲染文本区使用ASP.NET MVC的 HTML 助手并使其可调整大小是两个不同的担忧。当使用 HTML 帮助,您可以添加一个类的textarea

 <%:Html.TextAreaFor(X => x.SomeProperty,新{@class =缩放工具})%GT;

然后就可以勾此类与jQuery,使其可调整大小的,当它在网页上呈现。请参阅实现一个可调整大小的文本区域?有关建立用户 textarea的信息调整大小。

I have a asp.net mvc view that allows the user to enter some description in a textarea.

There are two problems that I am facing.

Either when I expand the textarea it is expanding without moving other html elements or I am not able to make create a Html.TextBoxFor () multiline textbox. Can anyone suggest a solution to this? If Use Textarea how to make it expand(grow in size) so that it does not overlap with other elements or how to use Html.TextBoxFor() for multiline?

This is how my code looks like

<% using (Html.BeginForm())
        { %>
     <%: Html.ValidationSummary(true)%>

    <fieldset>

        <div class="editor-label1">
            <%: Html.LabelFor(Model => Model.PackageID)%>
        </div>
        <div class ="editor-field1">
             <%: Html.HiddenFor(Model => Model.PackageID)%>
              <%: Html.DisplayFor(Model => Model.PackageID)%>
             <%: Html.ValidationMessageFor(Model => Model.PackageID)%>
        </div>

         <div class="editor-label1">
            <%: Html.LabelFor(Model => Model.PackageName)%>
        </div>
        <div class ="editor-field1">
            <%: Html.TextBoxFor(Model => Model.PackageName)%>
            <%: Html.ValidationMessageFor(Model => Model.PackageName)%>
        </div>

        <div class="editor-label1">
            <%: Html.LabelFor(Model => Model.PackageDesc)%>
        </div>
        <div class ="editor-field1" style= "padding-bottom: 50px; margin-bottom: 150px">
            <%: Html.TextBoxFor(Model => Model.PackageDesc, new { TextMode = TextBoxMode.MultiLine, cols = "55", rows = "10" })%>

            <%: Html.ValidationMessageFor(Model => Model.PackageDesc)%>
        </div>

         <div class="editor-label1">
            <%: Html.LabelFor(Model => Model.PackageTitle)%>
        </div>
        <div class ="editor-field1">
            <%: Html.TextBoxFor(Model => Model.PackageTitle)%>
            <%: Html.ValidationMessageFor(Model => Model.PackageTitle)%>
        </div>
        <div class ="editor-label">
            <%: Html.Label("Project ID") %>
        </div>
        <div class="editor-field">
            <%:Html.DropDownList("ProjectID", (IEnumerable<SelectListItem>)ViewData["projects"])%>
        </div>
         <div>
                <input type="submit" value="Save Edit" />
         </div>
    </fieldset>
    <% } %>

解决方案

Rendering TextArea using ASP.NET MVC's Html helper and making it resizable are two different concerns. When using Html helper you can add a class to textarea like

<%:Html.TextAreaFor(x => x.SomeProperty, new { @class = "resizer" }) %>

Then you can hook this class with jQuery to make it resizable when it's rendered on the web page. Please refer to Implementing a resizable textarea? for information about making your textarea resizable.

这篇关于Html.TextAreaFor在asp.net mvc的的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆