读取Html.TextAreaFor()的值

时间:2012-01-31 14:03:59

标签: jquery asp.net-mvc-3

如果我有

Html.TextAreaFor(x=>x.Name) 

我想读它的价值我该怎么做,因为这没有id? 如果按下按钮时用户在此框中输入的值不正确,我还想在其下面放置验证消息。填充错误而不是使用mvc架构的方法是什么?

2 个答案:

答案 0 :(得分:2)

如果要读取服务器端的值,只需查看Model类的Name属性。

如果您希望能够使用jQuery读取值,请将id添加到textarea,如下所示:

Html.TextAreaFor(x => x.Name, new { id = "someId" })

然后:

var value = $("#someId").val();
window.alert("The value is: " + value);

如果您想在不使用DataAnnotations或其他验证技术的情况下进行完全自定义验证,只需在textarea之后添加<span />,然后编写javascript以检查textarea的值,并隐藏/显示/相应地填充<span />

var myClickHandler = function(event) {
    var value = $("#someId").val();
    if (/* failing validation expression */) {
        $("#errorSpan").text("Bad bad value!").show(100);
    }
};

答案 1 :(得分:0)

我发现即使这里的参数也是一个id。我也可以说

var value = $("#Name").val();

获取

的值
Html.TextAreaFor(x=>x.Name)