Jquery - 将值分解为单独的输入字段
Jquery - Break up values into individual input fields
以下应用副本的 excel 值并将其分解为单独的输入字段。
一切正常,但我失去了第一个价值。
例如,如果我创建 5 个条目。第一个输入字段的 id 是 001,第二个是 002 等。
当我复制并粘贴 excel 列时,002 的值被复制到 001 id。
这是我从 Excel 复制的数据
12345
!http://imgur.com/nxe6yDq
https://jsfiddle.net/jdarville/r9tp7762/1/
$( document ).ready(function() {
$("#uncinfo").bind("paste", function(e){
// access the clipboard using the api
var pastedData = e.originalEvent.clipboardData.getData('text');
arr = pastedData.split(/'s+/);
for(i=1; i < arr.length; i++){
$("#unc"+i).val(arr[i]);
}
} );
});
$("#uncinfo").bind("paste", function(e){
// access the clipboard using the api
var pastedData = e.originalEvent.clipboardData.getData('text');
arr = pastedData.split(/'s+/);
for(i=1; i <= arr.length; i++){
$("#unc"+i).val(arr[i -1]);
}
});
检查这个
尝试将i
更改为 0
for(var i=0; i < arr.length; i++){
$("#unc"+i).val(arr[i]);
}
发生这种情况是因为您的数组从 0 开始,而您的输入是从 1 开始的,例如,对于用户名,您应该使用:
for(i=0; i < arr.length; i++){
$("#user"+(i+1)).val(arr[i]);
}
在此处测试此方法:
https://jsfiddle.net/1jpL4L2n/1/
另一种解决方案是在创建表行后移动 ID 递增:
$("#table").append('<tr>...</tr>');
x++; //text box increment
这样,您的输入ID将从0开始:#unc0,UNC1,...在这种情况下,您的填充循环将是:
for(i=0; i < arr.length; i++){
$("#user"+i).val(arr[i]);
}
您可以在此处测试此方法:
https://jsfiddle.net/h50h35vj/2/
相关文章:
- 一起编辑输入字段,而不是单独编辑
- JavaScript:使用来自单独HTML文档的输入写入当前HTML文档
- 两个单独的表单,输入具有相同的名称和id
- 如何单独对输入标签应用样式
- 将文本区域样式化,使其看起来像单独的输入框
- 如何在创建动态输入文件时获取相同输入类型的单独 ID
- 输入多个文件并将它们分成单独的形式
- 如何将输入的文本字符串提醒到单独的行中
- 将这些隐藏输入的值合并到单独的隐藏输入中的 JSON 格式字符串中
- Jquery - 将值分解为单独的输入字段
- 将日期选取器日期拆分为单独的输入
- 如何仅通过单独的图标而不是引用的输入字段激活 YUI 日期选择器
- 将文件大小与单独的文件输入一起添加
- Jquery,添加输入框总计与便士和英镑的单独输入框
- 在提交时,从输入中收集文本并将其显示在单独的文本区域中
- 自动补全和地名:是否可以在单独的输入字段中检索城市、州和国家
- 如何基于单独的回调(而不是用户输入)更新knockout视图模型
- jQuery对相同名称的输入进行模糊处理,而不是单独的单选按钮
- 当将代码作为单独的函数移动时,在末尾出现意外输入
- 单独删除输入