2011-01-20 3 views
1
<input type="text" id="personName" /> 

Учитывая возможные значения, как:Синтаксический значение входного сигнала с помощью Split

  • Джеймс
  • Джеймс Бонд
  • Джеймс Ван Бонд
  • Джеймс Ван Бонд Самый первый

Я хочу узнать, как разделить значение по пространству, а затем получить первое значение как FirstName и все остальные значения как Фамилия.

Возможно? Разделен ли способ сделать это?

Благодаря

ответ

6

Пример:http://jsfiddle.net/EpbVc/

var value = $('#personName').val().split(' '); 

var firstName = value.shift(); 

var restOfNames = value.join(' '); 

Использует .split() разделить на одном пространстве. Если может быть несколько пробелов, вы можете использовать .split(/\s+/).

Затем он использует .shift() для удаления первого элемента из массива и назначает его firstName.

Наконец, он использует .join(), чтобы объединить остальную часть массива в строку, используя одно пространство в качестве разделителя.

+1

работает очень красиво. спасибо – AnApprentice

+1

@AnApprentice. '.split()' будет [по-прежнему работать] (http://jsfiddle.net/EpbVc/1/) одним словом. Вы получаете 'undefined' обратно как значение, поэтому может возникнуть проблема с вашим выбором. Готово ли DOM? – user113716

+0

ты был прав, мой плохой! – AnApprentice

0

использовать .split ("") для разделения на массив, а затем использовать .join ("")

Смежные вопросы