Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Не отправляется картинка (https://javascript.ru/forum/dom-window/45461-ne-otpravlyaetsya-kartinka.html)

ruslite 02.03.2014 05:37

Не отправляется картинка
 
Всем привет. Вот есть у меня картинка в div`е, как сделать, что при нажатии она появлялась в другом div. Но еще чтобы в этом диве был не путь до картинки, а ее код, к примеру тэг alt. Как сделать?

danik.js 02.03.2014 06:53

<div id="source" style="border: 1px solid red">
    <img src="http://javascript.ru/forum/images/smilies/smile.gif" alt="Smile" />
    <img src="http://javascript.ru/forum/images/smilies/laugh.gif" alt="Laugh" />
    <img src="http://javascript.ru/forum/images/smilies/wink.gif" alt="Wink" />
</div>
<button id="button">Переместить</button>
<div id="target" style="border: 1px solid blue">
</div>
<script>
    var button = document.getElementById('button');
    var source = document.getElementById('source');
    var target = document.getElementById('target');
    button.onclick = moveImage;
    function moveImage() {
        var image = source.lastElementChild;
        if (!image)
            return;
        target.appendChild(image);
        target.appendChild(document.createTextNode(image.alt));
    }
</script>

ruslite 02.03.2014 07:04

Цитата:

Сообщение от danik.js (Сообщение 300261)
<div id="source" style="border: 1px solid red">
    <img src="http://javascript.ru/forum/images/smilies/smile.gif" alt="Smile" />
    <img src="http://javascript.ru/forum/images/smilies/laugh.gif" alt="Laugh" />
    <img src="http://javascript.ru/forum/images/smilies/wink.gif" alt="Wink" />
</div>
<button id="button">Переместить</button>
<div id="target" style="border: 1px solid blue">
</div>
<script>
    var button = document.getElementById('button');
    var source = document.getElementById('source');
    var target = document.getElementById('target');
    button.onclick = moveImage;
    function moveImage() {
        var image = source.lastElementChild;
        if (!image)
            return;
        target.appendChild(image);
        target.appendChild(document.createTextNode(image.alt));
    }
</script>

добрый человек, а как мне отправить див в form ? к примеру такой код
form class="form-inline" id="messageForm">
				<input id="nameInput" type="hidden" class="input-medium" value="<?php echo $log_username;?>"  />
				<input id="canalInput"  type="hidden" class="input-medium" value="<?php echo $name;?>"  />
				<input id="messageInput" name="aqwed" placeHolder="Ваше сообщение"  />
				<input type="submit" value="Send" />
			</form>

или может знаете как сделать систему смайлов, но чтобы не в textarea, там не отображается сам смайл а только код. а мне надо, чтобы и в поле набора отображался смайл. уже два дня ищу, нашел emoji, а вот так не реализуют. помогите, устал уже тупить

danik.js 02.03.2014 08:54

Цитата:

Сообщение от ruslite
поле набора отображался смайл

Это только contentEditable. Смотри в сторону готовых WYSIWYG редакторов, например CKEditor.

В нем ты можешь набирать текст и использовать плагин для вставки изображений.

ruslite 02.03.2014 10:36

Цитата:

Сообщение от danik.js (Сообщение 300266)
Это только contentEditable. Смотри в сторону готовых WYSIWYG редакторов, например CKEditor.

В нем ты можешь набирать текст и использовать плагин для вставки изображений.

редактор этот не устроил: если textarea находится в form, то кнопка отправить срабатывает раз через раз. Отправляет весь путь картинки. Плюс если скриптом отправлять через enter, то сначала срабатывает сам enter(курсор перемещается ниже), а потом уже уже происходит отправка.
Мне вот интересно contentEditable через div. Как сделать отправку этого div, но при том, чтобы картинка(смайл) передавал свой alt, а не весь путь до картинки. Как реализовать?

danik.js 03.03.2014 01:56

Цитата:

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

В любом случае у тебя в HTML будет либо <img src="smile.png"> либо скажем <span class="smile">.
Перед отправкой заменишь эти элементы на то че тебе нужно.
Тебе еще придется разбираться как запретить вставлять HTML в contentEditable, как отключить всякие функции форматирования и тп.


Часовой пояс GMT +3, время: 12:46.