【问题标题】:Clear Html.TextBox() value with jquery使用 jquery 清除 Html.TextBox() 值
【发布时间】:2011-12-15 11:05:15
【问题描述】:

我想用 jquery 清除文本框的默认值。

@Html.TextBox("password", ***@Views.Resource.Password***, new { @class = "cssClass" })

【问题讨论】:

  • 渲染出来的html长什么样子?
  • 它看起来像@Views.Resource.Password 中的任何内容
  • 这不是渲染出来的html的样子,而且因为我没有asp经验,所以不知道结果会是什么样子。 Ali 的解决方案可能有效,但您应该为其分配一个 id 并改用它。

标签: jquery asp.net-mvc html.textbox


【解决方案1】:

使用这个解决方案:

$(function (){

    $("input.cssClass").val('');

});

$(document).ready(function(){

    $("input.cssClass").val('');

});

【讨论】:

  • 我不想更改 css,@Views.Resource.Password 在文本框中显示一些默认文本。单击文本框时,我希望清除文本。
  • 你认为这段代码会改变你的css吗?这是不正确的,这段代码只是改变了文本框的值
【解决方案2】:

您可以使用自定义 html 助手来获取 texbox 的 id:

public static class HtmlHelperExtensions
{
    public static MvcHtmlString ClientIdFor<TModel, TProperty>(this HtmlHelper<TModel> htmlHelper, Expression<Func<TModel, TProperty>> expression)
    {
        return MvcHtmlString.Create(htmlHelper.ViewContext.ViewData.TemplateInfo.GetFullHtmlFieldId(ExpressionHelper.GetExpressionText(expression)));
    }
}

你可以在 jQuery 中说:

$("#@(Html.ClientIdFor(m => m.Password))").val("");

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-14
    • 2018-03-28
    • 1970-01-01
    • 2023-03-10
    • 2014-07-13
    相关资源
    最近更新 更多