<input />标签中的表格?

时间:2010-12-17 16:58:14

标签: javascript jquery html css

是否可以在输入元素中插入一个tabbulation字符?

任务:我有一个输入,用户输入6个字符,必须如下所示:
3个字符[空格] 3个字符。
问题:第二个3个字符的左侧位置不得更改。

例如:
看起来
MMM [] OPS
III [] DOS
必须看
MMM [] OPS
III [] DOS

不能使用font-type进行操作。

TY

3 个答案:

答案 0 :(得分:2)

对我来说,为什么必须对齐输入是没有意义的......但我可以想到一些可能有意义的替代解决方案,这取决于实际规定的要求是什么(即什么是输入必须对齐的原因

你可以有一个6字符字段(或7并包含空格),右边(或下面,等等)的“预览”在输入字段中输入时格式化和对齐两个3字符代码。

您可以有两个单独的输入字段,并在键入时使用javascript自动选项卡(完整时选项卡右键)或退格键(字段2为空时选项卡左侧)

您还可以使用javascript在键入3个字符后自动在字段中插入标签(\ t),或者在键入空格时将其替换为标签。

我使用的方法完全取决于字段和3字母代码是什么以及为什么它们此时被输入。对于一组固定的代码,我可能会使用选择列表而不是输入。

答案 1 :(得分:0)

是的,插入制表符"\t"。你可以从文本编辑器中复制它 - 或者使用javascript来检测tab键并使用它来插入tab char。但是要小心如何覆盖默认行为,因为tab键用于可访问性目的。

答案 2 :(得分:0)

您可以在输入值中使用\t字符转义符:

$(document).ready(function() {
    $("#text1").val("MMM\tOPS");
    $("#text2").val("III\t\tOPS");
});

但请注意,我必须在第一个文本框中使用一个制表符,在第二个文本框中使用两个制表符,以便正确对齐结果。