2013-06-03 3 views
1

У меня есть текстовое поле, который содержит огромный текст, как этого форматJQuery символов заменить

Question A Answer A 
Question B Answer B 
Question C Answer C 
Question D Answer D 

Между вопрос и ответить на него есть вкладка, а между ответом и на следующий вопрос он есть \ п и вкладка. У меня есть несколько переключателей для замены этой вкладки с любыми символами, как запятая, запятая, двоеточие и т.д. Я попробовал этот

$("textarea").html().replace(" ",",") 

но resplacing только первые вкладки пространства.

Во-вторых, я также хочу, чтобы заменить \ N с теми же персонажами (для этого у меня есть отдельные кнопки радио) Я также сортировать текст область текста в алфавитном порядке, как я могу это сделать

+0

Можете ли вы предоставить некоторые реальные данные? – BrunoLM

+0

http://quizlet.com/22168227/export/ это пример –

+0

Действительно ли они являются вкладками ('\ t') или вы пропускаете четыре пробела в textarea? –

ответ

3

В случае TextArea, вам нужно использовать val() вместо .html() рассмотреть \n или \t.

var value = $("textarea").val().replace(/\t/g,","); 
//use the variable "value" to store it again in textarea or for further process. 

UPDATE:

var value = $("textarea").val().split(' ').join(','); //or '\t' 
$("textarea").val(value); 
+0

, все еще заменяя только первый –

+0

, вам нужно сохранить привести к переменной, чтобы использовать ее дальше. Надеюсь, вы это делаете. –

+0

@SyedSalmanRazaZaidi проверить мой обновленный пост –

2

Вам нужно использовать RegEx и указать глобальный флаг:

$("textarea").val($("textarea").val().replace(/\s{2,}/g,",")); 

это для произвольного числа пространств, более или равно 2, то

+0

все еще заменяет только первый –

+0

Я полагаю, вы не возвращаете результат обратно в элемент: $ ("textarea"). Html ($ ("textarea") .html(). Replace (//g, ",")) ; –

+0

Я устанавливаю его, но его заменяет только первую вкладку –

0

Попробуйте

$("textarea").html().replace(/\s/g, ","); // to replace all spaces 
$("textarea").html().replace(/\n/g, ","); // to replace all newline chars 

где г = глобальный флаг

+0

'\ s' заменит пробелы в вопросе и ответах, я думаю, он хочет заменить только' tabs' и 'newlines' – BrunoLM

+0

его заменяющие пространства, но его добавление несколько, –

+0

@BrunoLM делает' .html() 'здесь? это главная проблема в этом посте, я думаю. –

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