【发布时间】:2018-11-10 05:00:30
【问题描述】:
我有两个input 字段和一个textarea。当我在input 字段中输入内容时,它们的.val() 会自动添加到textarea。
它工作正常,但我希望textarea 中的这些值是只读的。
我希望文本区域的行为如下:
我可以输入额外的文本,但不能删除从两个input 字段中获取的文本。
$(function() {
var text1 = $('#text1');
var text2 = $('#text2');
var description = $('#description');
function onChange() {
description.val("Chesis No: " + text1.val() + ", Engine No: " + text2.val());
var base = description.val();
var regex = new RegExp("^" + base, "i");
$('#description').on("input", function(ev) {
var query = $(this).val();
if (!regex.test(query)) {
//ev.preventDefault();
$(this).val(base);
}
});
}
$('#text1')
.change(onChange)
.keyup(onChange);
$('#text2')
.change(onChange)
.keyup(onChange);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" id="text1" placeholder="Chassis No" class="form-control" />
<input type="text" id="text2" placeholder="Engine No " class="form-control" />
<textarea rows="4" cols="50" name="postContent" id="description"></textarea>
【问题讨论】:
-
您不能拥有部分可编辑的字段。它要么可编辑,要么不可编辑。如果您想要这种行为,请允许用户在单独的字段中键入注释,然后在提交表单之前组合值。
-
jsfiddle.net/dreamfighterr/L3n81298 它已经在工作了,但是当我传递一个输入值(不是字符串)时它失败了
-
... 然后我禁用 Javascript 并删除该文本并破坏您的系统。
标签: javascript jquery html input textarea