كيف أرفق بادئة كل كلمة رئيسية على تقديم من حقل الإدخال؟
سؤال
ولدي حقل الإدخال والتي عندما يتم الضغط على مفتاح الإدخال (حيث لا يوجد مجال تقديم) أود جافا سكريبت لإضافة الطابع @ أمام كل كلمة رئيسية عند إرسال النموذج.
على سبيل المثال:
والنص سيتم إدخالها كما ...
المنزل، الشخصية، دعوة م>
ولكن هل القيمة التي يتم تقديمها يكون ...
Home،personal،call م>
وحتى الآن لدي:
$("#inputfield").keydown(function(e){ if (e.keyCode == 13) { $("#inputfield") // Not sure what to add next .submit(); }
المحلول
وأنت سيكون لتقسيم قيمة الحقل في المساحات ثم قم بإضافة @ أمام كل قيمة مجموعة، ثم أضيف أن يعود إلى قيمة المدخلات. كما أوصي الاستماع لتقديم الحدث من النموذج بدلا من إدخال المفتاح في حقل الإدخال.
$('#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
});
نصائح أخرى
وهذا ينبغي أن تفعل خدعة:
$("#inputfield").keydown(function(e){
if (e.keyCode == 13) {
$('#inputfield').val($('#inputfield').val().split(',').map(function(item) {
return '@'+item;
}).join(','));
$(this).submit();
}
لا تنتمي إلى StackOverflow