Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 16.11.2016, 11:59
Аватар для karakym
Профессор
Отправить личное сообщение для karakym Посмотреть профиль Найти все сообщения от karakym
 
Регистрация: 21.02.2010
Сообщений: 213

Сгенерировать тект из поля
Доброго времени суток.
Есть 2 поля textarea и одна кнопка button
<textarea></textarea>
<textarea></textarea>
<button>Сгенерировать</button>

Есть шаблон подстановки
Код:
INSERT INTO `category` ( `parentid`, `posi`, `name`, `alt_name`) VALUES ('$num1', '$num2', '$name1', '$name2');
В первое поле вставляется текст типа: 0|1|BMW|bmw
По нажатию кнопки нужно вставить во второе поле шаблон с подставленными значениями, где разделитель значений "|"
При этом разделитель строк \n (перенос).
Подскажите как реализовать?
Ответить с цитированием
  #2 (permalink)  
Старый 16.11.2016, 13:26
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,215

Сообщение от karakym
как реализовать?
Как вариант...

var str='0|1|BMW|bmw';
alert(str.replace(/\|/g,'\n'));
Ответить с цитированием
  #3 (permalink)  
Старый 16.11.2016, 14:08
Аватар для karakym
Профессор
Отправить личное сообщение для karakym Посмотреть профиль Найти все сообщения от karakym
 
Регистрация: 21.02.2010
Сообщений: 213

<!DOCTYPE html>
<html >
<head>
  <meta charset="UTF-8">
  <title>SQL Code Category Generator</title>
  <link rel="stylesheet" type="text/css" href="css/style.css"/>
</head>
<body>
<textarea class="front" placeholder="Одна категория на одну строку">1|2|QWE|qwe
1|2|ASD|asd
1|2|ZXC|zxc</textarea>
<textarea class="result" placeholder="Здесь будет результат"></textarea>
<button>GENRATE</button>
  <script src="http://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
  <script>
    $('button').click(function(){
        var list = $(".front").val().split("\n");
        for (var i = 0, ln = list.length; i < ln; ++i)
          var separ = list[i].split("|");
          for (var i = 0, ln = separ.length; i < ln; ++i)
          $(".result").val("INSERT INTO `category` ( `parentid`, `posi`, `name`, `alt_name`) VALUES ('"+separ[0]+"', '"+separ[1]+"', '"+separ[2]+"', '"+separ[3]+"');");
    });
  </script>
</body>
</html>

Чет не полностью вышло.
Только последнюю строку выводит, а должен все, построчно.
Ответить с цитированием
  #4 (permalink)  
Старый 16.11.2016, 14:20
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,215

Сообщение от karakym
Чет не полностью вышло.
А ты, что из этого
Сообщение от karakym
<textarea class="front" placeholder="Одна категория на одну строку">1|2|QWE|qwe
1|2|ASD|asd
1|2|ZXC|zxc</textarea>
собираешься получить?
Ответить с цитированием
  #5 (permalink)  
Старый 16.11.2016, 14:21
Аватар для karakym
Профессор
Отправить личное сообщение для karakym Посмотреть профиль Найти все сообщения от karakym
 
Регистрация: 21.02.2010
Сообщений: 213

<!DOCTYPE html>
<html><head><meta charset="UTF-8">
<title>SQL Code Category Generator</title>
<style>
@import url('https://fonts.googleapis.com/css?family=Cuprum');
body {background: rgb(204,204,204);font-family: 'Cuprum', sans-serif;margin:0;padding:0;}
textarea {font-size: 100%;padding: 0;font-family: 'Cuprum', sans-serif;box-sizing: border-box;text-align: center;border: 0px;border-right: 1px solid #AAA;border-bottom: 1px solid #AAA;width: 50%;height: 90%;position: absolute;resize: none;transition: 0.5s;}
textarea:last-child {border-right: 0px;}
textarea:focus, button:focus {outline: none;}
textarea:hover {background: #EEE;}
button {width: 100%;height: 10%;position: absolute;font-family: 'Cuprum', sans-serif;border: 0px;font-size: 40px;bottom: 0;background: #EEE;}
.front {left:0;}
.result {right:0;}
</style></head><body>
<textarea class="front" placeholder="Одна категория на одну строку">1|2|QWE|qwe
1|2|ASD|asd
1|2|ZXC|zxc</textarea>
<textarea class="result" placeholder="Здесь будет результат"></textarea>
<button>GENRATE</button>
<script src="http://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<script>
    $('button').click(function(){
        var list = $(".front").val().split("\n");
        for (var i = 0, ln = list.length; i < ln; ++i)
          var separ = list[i].split("|");
          for (var i = 0, ln = separ.length; i < ln; ++i)
          $(".result").append("INSERT INTO `dle_category` ( `parentid`, `posi`, `name`, `alt_name`) VALUES ('"+separ[0]+"', '"+separ[1]+"', '"+separ[2]+"', '"+separ[3]+"');\n");
    });
</script></body></html>
Ответить с цитированием
  #6 (permalink)  
Старый 16.11.2016, 14:26
Аватар для karakym
Профессор
Отправить личное сообщение для karakym Посмотреть профиль Найти все сообщения от karakym
 
Регистрация: 21.02.2010
Сообщений: 213

Сообщение от ksa Посмотреть сообщение
А ты, что из этого... ...собираешься получить?
Из этого:
Код:
0|1|QWE|qwe
0|2|ASD|asd
1|1|ZXC|zxc
Собираюсь получить это:
Код:
INSERT INTO `category` (`parentid`,`posi`,`name`,`alt_name`) VALUES ('0', '1', 'QWE', 'qwe');
INSERT INTO `category` (`parentid`,`posi`,`name`,`alt_name`) VALUES ('0', '2', 'ASD', 'asd');
INSERT INTO `category` (`parentid`,`posi`,`name`,`alt_name`) VALUES ('1', '1', 'ZXC', 'zxc');
Ответить с цитированием
  #7 (permalink)  
Старый 16.11.2016, 14:48
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,215

Сообщение от karakym
Собираюсь получить это
Вона че!
Как вариант...

<!DOCTYPE html>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=windows-1251' />
<script src='http://code.jquery.com/jquery-latest.js'></script>
<!--
<script src="https://code.angularjs.org/1.3.9/angular.min.js"></script>
<script src="https://code.angularjs.org/1.3.9/angular-route.js"></script>
-->
<style type='text/css'>
textarea {
	width: 90%;
	height: 200px;
}
</style>
<script type='text/javascript'>
$(function(){
	$('button').click(function(){
		var str = $("#front").val();
		var reg=/(\d+)\|(\d+)\|(\S+)\|(\S+)/g;
		str=str.replace(reg,"INSERT INTO `category` ( `parentid`, `posi`, `name`, `alt_name`) VALUES ('$1', '$2', '$3', '$4');");
		$("#result").val(str);
	});
});
</script>
</head>
<body>
<textarea id="front" placeholder="Одна категория на одну строку">1|2|QWE|qwe
1|2|ASD|asd
1|2|ZXC|zxc</textarea>
<textarea id="result" placeholder="Здесь будет результат"></textarea>
<button>GENRATE</button>
</body>
</html>
Ответить с цитированием
  #8 (permalink)  
Старый 16.11.2016, 14:55
Аватар для karakym
Профессор
Отправить личное сообщение для karakym Посмотреть профиль Найти все сообщения от karakym
 
Регистрация: 21.02.2010
Сообщений: 213

Сообщение от ksa
Как вариант...
То что нужно! Спасибо.
З.Ы. Какая разница использования class или id в твоем коде?
Я по классах выбираю элементы, при этом я знаю, что на этой страницы дубликатов не будет. А ты ставишь id, почему?
Ответить с цитированием
  #9 (permalink)  
Старый 16.11.2016, 14:58
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,215

Сообщение от karakym
Какая разница использования class или id в твоем коде?
ИД для уникальных значений... Классы для целых групп однотипных элементов...

Сообщение от karakym
Я по классах выбираю элементы, при этом я знаю, что на этой страницы дубликатов не будет. А ты ставишь id, почему?
Если нет дубликатов, зачем классы?

"Классовая" выборка подразумевает целый массив таких элементов... Выборка по ИД показывает уникальность выбора.
Ответить с цитированием
  #10 (permalink)  
Старый 16.11.2016, 15:02
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Сообщение от karakym
$(".result").val("INSERT INTO `category` ( `parentid`, `posi`, `name`, `alt_name`) VALUES ('"+separ[0]+"', '"+separ[1]+"', '"+separ[2]+"', '"+separ[3]+"');");
И потом это скармиливается серверу и выполняется на нем?
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Значение поля из другого поля формы kolhoznik Элементы интерфейса 3 11.02.2016 12:35
В value поля input находится не весь текст из поля DarkLordDark Общие вопросы Javascript 1 13.06.2014 00:17
Скрытие\показывание поля при вводе текста egor1708 Элементы интерфейса 2 30.11.2012 19:02
Как сделать связанные поля ввода diakon Элементы интерфейса 2 11.12.2009 16:17
Динамическое клонирование поля и AJAX supercelt AJAX и COMET 6 02.09.2008 11:27