我有一个输入字段,当按下回车键时(因为没有提交字段)我希望javascript在提交表单时添加每个关键字的@字符前面。
该文字将输入为......
回家,个人,致电
但提交的价值是......
@home,@ personal,@ call
$("#inputfield").keydown(function(e){ if (e.keyCode == 13) { $("#inputfield") // Not sure what to add next .submit(); }
答案 0 :(得分:2)
这应该可以解决问题:
$("#inputfield").keydown(function(e){
if (e.keyCode == 13) {
$('#inputfield').val($('#inputfield').val().split(',').map(function(item) {
return '@'+item;
}).join(','));
$(this).submit();
}
答案 1 :(得分:1)
您必须在空格处拆分字段的值,然后在每个数组值前面添加@,然后将其作为输入值添加回来。另外,我建议在输入字段中监听表单的提交事件而不是回车键。
$('#form').submit( function() {
var words = $('#inputfield').val().split(' ');
var newwords = new Array();
for(i=0, x=words.length; i<x; i++){
newwords.push('@'+words[i]);
}
$('#inputfield').val( newwords.join(' ') );
//we do not return false because we want the form to submit
});