使ReadOnly文本框不可选

时间:2017-04-26 12:39:35

标签: html asp.net-mvc readonly

我有一个带有文本框的表单,该文本框具有只读属性。这不是什么大问题,但我想我会问,那么是否有办法制作该文本框,以便用户无法选择它并将光标放在其中?

已禁用的属性会执行此操作,但该文本框不会随表单一起提交。

是否有针对此的js / jquery解决方案?

<form>
    <div class="col-md-9">
        @Html.EditorFor(model => model.Time, new { htmlAttributes = new { @class = "form-control clear-textbox create-form-txtbox time-txtbox", @readonly = "readonly" } })
        @Html.ValidationMessageFor(model => model.Time, "", new { @class = "text-danger" })
    </div>

    <input type="submit" value="Submit" />
</form>

感谢任何帮助。

3 个答案:

答案 0 :(得分:0)

试试这个。 它为我工作。 用此控件替换@ Html.EditorFor。

<input type="text" value="@Model.Time" id="Time" name="Time" class="form-control" readonly />

答案 1 :(得分:0)

使用内联onkeydown="return false;"属性

或者如果你想要一个javascript解决方案

$('#someId').keydown(function(e) {
   e.preventDefault();
   return false;
});

答案 2 :(得分:-1)

我使用斯蒂芬的评论作为答案而且有效。

我已经创建了一个隐藏的输入字段以提交给服务器,但是用户只会看到具有该隐藏输入字段所持有的值的已禁用文本框。