Почему append перестает работать при вводе данных?

Здравствуйте!
Есть у меня JS файл:
JS
function bbcode_insert(name){
	if(name == 'bold'){
		data = '[b]Жирный текст[/b]';
	}

	else if(name == 'video'){
		url = prompt('URL видео', 'https://');
		if(url){
			data = '[video]' + url + '[/video]';
		}
	}

	else if(name == 'audio'){
		url = prompt('URL аудио', 'https://');
		if(url){
			data = '[audio]' + url + '[/audio]';
		}
	}

	else if(name == 'url'){
		url = prompt('URL сайта', 'https://');
		if(url){
			name = prompt('Описание ссылки', '');
			if(name){
				data = '[url=' + url + '*]' + name + '[/url]';
			}
		}
	}
	if(data){
		$('#n_content').append(data);
	}
}
HTML
<p><input type="text" placeholder="Название новости" id="n_title"></p>
<p><textarea placeholder="Краткое содержание" id="n_short_content" style="margin: 0px; height: 140px; width: 100%;"></textarea><br /></p>
<p>
<button onclick="bbcode_insert('bold')"><i class="fa fa-bold" aria-hidden="true"></i> | Жирный</button>
<button onclick="bbcode_insert('italic')"><i class="fa fa-italic" aria-hidden="true"></i> | <i>Курсив</i></button>
<button onclick="bbcode_insert('url')"><i class="fa fa-link" aria-hidden="true"></i> | <a>URL</a></button>
<button onclick="bbcode_insert('center')"><i class="fa fa-align-center" aria-hidden="true"></i> | Центровка</button>
<button onclick="bbcode_insert('br')"><i class="fa fa-arrows-v" aria-hidden="true"></i> | Абзац</button>
<button onclick="bbcode_insert('image')"><i class="fa fa-image" aria-hidden="true"></i> | Изображение</button>
<button onclick="bbcode_insert('video')"><i class="fa fa-video-camera" aria-hidden="true"></i> | Видео</button>
<button onclick="bbcode_insert('audio')"><i class="fa fa-headphones" aria-hidden="true"></i> | Музыка</button>
</p>
<p><textarea placeholder="Содержание новости" id="n_content" style="margin: 0px; width: 100%; height: 308px;"></textarea></p>
<p><button onclick="button_query('admin_functions', 'add_new_post', 'n_title.n_short_content.n_content')">Отправить</button></p>



При нажатии на кнопку для вставки кода, все работает нормально, но стоит мне внести какие либо изменения в текстовом поле, а потом допустим попытаться вставить ссылку, то вставка сразу же перестает работать. Как это можно вылечить?
  • Вопрос задан
  • 133 просмотра
Решения вопроса 1
Пригласить эксперта
Ответы на вопрос 1
Krasnodar_etc
@Krasnodar_etc
fundraiseup
Во-первых, почитайте про switch (name) { ... :)
Во-вторых, ставьте console.log(name, data); после всех if-else и смотрите, что приходит, а что нет. Отрабатывает ли вообще функция
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы