使只读文本框不可选择
Make ReadOnly Textbox Non-Selectable
我有一个带有文本框的表单,该文本框的属性为只读。这没什么大不了的,但我想我会问,有没有办法制作该文本框,以便用户无法 select 它并将光标放在其中?
disabled 属性可以做到这一点,但是该文本框不会随表单一起提交。
是否有 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>
感谢任何帮助。
试试这个。
它为我工作。
用这个控件替换@Html.EditorFor。
<input type="text" value="@Model.Time" id="Time" name="Time" class="form-control" readonly />
使用内联 onkeydown="return false;"
属性
或者如果您想要 javascript 解决方案
$('#someId').keydown(function(e) {
e.preventDefault();
return false;
});
我使用了 Stephen 的评论作为答案并且有效。
我创建了一个隐藏的输入字段来提交给服务器,但用户只会看到禁用的文本框,其中包含该隐藏输入字段所包含的值。
我有一个带有文本框的表单,该文本框的属性为只读。这没什么大不了的,但我想我会问,有没有办法制作该文本框,以便用户无法 select 它并将光标放在其中?
disabled 属性可以做到这一点,但是该文本框不会随表单一起提交。
是否有 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>
感谢任何帮助。
试试这个。 它为我工作。 用这个控件替换@Html.EditorFor。
<input type="text" value="@Model.Time" id="Time" name="Time" class="form-control" readonly />
使用内联 onkeydown="return false;"
属性
或者如果您想要 javascript 解决方案
$('#someId').keydown(function(e) {
e.preventDefault();
return false;
});
我使用了 Stephen 的评论作为答案并且有效。
我创建了一个隐藏的输入字段来提交给服务器,但用户只会看到禁用的文本框,其中包含该隐藏输入字段所包含的值。