有没有办法在文本字段值中修复空格。表示文本字段出现时已经有空格,用户在空格后输入值。并且当用户擦除其值时,用户也无法移除该空间。我知道这件事可以通过填充来完成,但我有一个问题,并希望在价值中有一个修复空间。
<input type="text" id="search" value="fix space" />
文本字段:(修复空间)用户值
答案 0 :(得分:1)
您可以使用keyup事件来检查空间并在需要时添加它:
<input id="mytb" type="text" onkeyup="addSpace()" />
function addSpace() {
var tbVal = $('#mytb').val();
if (tbVal.substring(0, 1) != ' ') $('#mytb').val(' ' + tbVal);
}
答案 1 :(得分:1)
您可以使用keyup或blur事件:
document.getElementById('search').addEventListener('blur', function() {
if (this.value.indexOf(' ') != 0) {
this.value = ' ' + this.value;
}
}, false);
或者:
document.getElementById('search').addEventListener('keyup', function() {
if (this.value.indexOf(' ') != 0) {
this.value = ' ' + this.value;
}
}, false);
答案 2 :(得分:-1)
嗯,css是要走的路,但从它的声音来看,你希望空间成为提交数据的一部分。
如果是这种情况,为什么不在提交处理程序中添加空格?
答案 3 :(得分:-1)
我认为您希望在用户输入前面添加前缀空格。 如果仅用于视觉效果,则必须在CSS中进行更改,如下所示。
input{
padding-left: 10px;
}
如果您想要包含实际的空格字符,可以在提交表单时使用下面的Javascript在用户输入之前添加空格。
function DoSubmit(){
var elem = document.myform.search.value;
document.myform.search.value = ' '+elem;
return true;
}