如果第一个最初为空,则在 keyup 的 2 个输入上使用相同的值
use same value on 2 inputs on keyup if first one is originaly empty
我在 Name 和 Company 表单中有 2 个字段,我希望 Name 在键入时动态获取 Company 值(仅当您开始输入 Company 时 Name 为空),但我没有找到最佳方法实现这一目标。
例如,HTML 是:
<form>
...
<input type="text" id="Name" name="Name" value="">
<input type="text" id="Company" name="Name" value="">
...
</form>
我试过了:
$('#Company').on('keyup', function(){
var str = $('#Company').val();
str = str.substring(0, str.length - 1);
if($('#Name').val().length <= 0 || $('#Name').val() == str){
$('#Name').val($('#Company').val());
}
});
它在某种程度上起作用,如果您输入得太快,它会停止假设 #Name
和 #Company
在上一个 keyup
之前具有相同的值
我也考虑过在公司 blur
上做,它可能会奏效,但这不是我想要实现的用户体验。
使用 Angular.js 或类似的东西可能会更容易,但现在不能使用它。
像这样,添加一个class,在名称字段输入时删除,否则从公司字段复制第一个字符后长度检查将失败。
$('#Name').addClass('empty').on('input', function() {
$(this).toggleClass('empty', this.value.trim().length === 0);
});
$('#Company').on('input', function() {
$('#Name.empty').val(this.value);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<form>
Name : <input type="text" id="Name" name="Name" value=""><br>
Comp : <input type="text" id="Company" name="Name" value="">
</form>
我在 Name 和 Company 表单中有 2 个字段,我希望 Name 在键入时动态获取 Company 值(仅当您开始输入 Company 时 Name 为空),但我没有找到最佳方法实现这一目标。
例如,HTML 是:
<form>
...
<input type="text" id="Name" name="Name" value="">
<input type="text" id="Company" name="Name" value="">
...
</form>
我试过了:
$('#Company').on('keyup', function(){
var str = $('#Company').val();
str = str.substring(0, str.length - 1);
if($('#Name').val().length <= 0 || $('#Name').val() == str){
$('#Name').val($('#Company').val());
}
});
它在某种程度上起作用,如果您输入得太快,它会停止假设 #Name
和 #Company
在上一个 keyup
我也考虑过在公司 blur
上做,它可能会奏效,但这不是我想要实现的用户体验。
使用 Angular.js 或类似的东西可能会更容易,但现在不能使用它。
像这样,添加一个class,在名称字段输入时删除,否则从公司字段复制第一个字符后长度检查将失败。
$('#Name').addClass('empty').on('input', function() {
$(this).toggleClass('empty', this.value.trim().length === 0);
});
$('#Company').on('input', function() {
$('#Name.empty').val(this.value);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<form>
Name : <input type="text" id="Name" name="Name" value=""><br>
Comp : <input type="text" id="Company" name="Name" value="">
</form>