我输入[type = text],用户只能键入alpha,space和逗号。 我需要在“输入”js中的每个逗号之后放置一个空格。 有什么想法吗?
答案 0 :(得分:1)
例如使用JQuery:
$("#landing-search-input").keyup(function(event) {
if (event.keyCode == 188) {
$(this).val($(this).val() + " ");
}
});
或
$("#landing-search-input").keyup(function(event) {
var inputValue = $(this).val();
if (inputValue.substr(-1) == ",") {
$(this).val(inputValue + " ");
}
});
答案 1 :(得分:1)
如果你想这样做,那么
...您需要以下内容,这些内容适用于所有主流浏览器,包括IE 6。
代码:
function insertTextAtCursor(el, text) {
var val = el.value, endIndex, range;
if (typeof el.selectionStart != "undefined"
&& typeof el.selectionEnd != "undefined") {
endIndex = el.selectionEnd;
el.value = val.slice(0, endIndex) + text + val.slice(endIndex);
el.selectionStart = el.selectionEnd = endIndex + text.length;
} else if (typeof document.selection != "undefined"
&& typeof document.selection.createRange != "undefined") {
el.focus();
range = document.selection.createRange();
range.collapse(false);
range.text = text;
range.select();
}
}
document.getElementById("some_input").onkeypress = function(evt) {
evt = evt || window.event;
var charCode = typeof evt.which == "number" ? evt.which : evt.keyCode;
if (String.fromCharCode(charCode) == ",") {
insertTextAtCursor(this, ", ");
return false;
}
};