PDA

Просмотр полной версии : В одном IPNPUT-е пишешь в другом пишется


G_Null
17.09.2007, 00:14
Как сделать чтобы когда я заполнял один INPUT в другом, писался этот же текст ? вернее не этот.. то есть человек пишет свой логин, и ему сразу же рядом пишется ссылка на него на конце которой и будет его логин. Лучше конесно чтобы даже это не инпут был(ну в том, в котором выводится) а просто текст, чтобы не смущатьползователя, а то решит что и это надо заполнить.. Надеюсь в правильный раздел написал..

ana
17.09.2007, 09:15
<html>
<head>
</head>

<body>
<input type="text" name="textfield" onKeyUp="getElementById('copy').value = this.value">
<input id="copy" type="text" name="textfield2">
</body>
</html>

Только не понятно зачем?:quest:

G_Null
17.09.2007, 10:58
и ещё один момент, вернее два:
- как сделать второе(в котором пишется) недостпным для редактирования, то есть непосредственно в нём самом пользователь ничего писть не мог, а писалось только автоматом
- и можно ли как-топри этой кончтрукции вставить ещё текст и к нему информация введённая в первом поле будет прибавляться. Просто вынося неизменяемую строчку за пределы этого окна получается не красиво

czukowski
17.09.2007, 14:32
G_Null, конечно можно, для этого просто делаешь поле выключенным:
<form name="someform">
<input type="text" onKeyUp="document.someform.otherinput.value=this.value;" />
<input type="text" name="otherinput" disabled="disabled" />
</form>
По второму пункту, удобно воспользоваться каким-нибудь аналогом функции sprintf (довольно мощный есть к примеру тут: http://jan.moesen.nu/code/javascript/sprintf-and-printf-in-javascript/ (http://jan.moesen.nu/code/javascript/sprintf-and-printf-in-javascript/)), и полученную строку вставлять с помощью element.innerHTML (http://www.google.com/search?q=element.innerHTML)

ana
17.09.2007, 15:48
и ещё один момент, вернее два:
- как сделать второе(в котором пишется) недостпным для редактирования, то есть непосредственно в нём самом пользователь ничего писть не мог, а писалось только автоматом


<html>
<head>
</head>

<body>
<input type="text" name="textfield" onKeyUp="getElementById('copy').innerHTML = 'HELLO WORLD +' + this.value">
<div id="copy"></div>
</body>
</html>

Uncle JorJ
24.10.2007, 00:17
<html>
<head>
</head>

<body>
<input type="text" name="textfield" onKeyUp="getElementById('copy').innerHTML = 'HELLO WORLD +' + this.value">
<div id="copy"></div>
</body>
</html>


Помоемому красивее всетаки будет "+=" ... :oops:

pozhiratel13
29.01.2008, 22:41
Помоемому красивее всетаки будет "+=" ... :oops:
Вопрос, а как сделать, что бы вводимый текст появлялся между определенными словами другого текста???
попробовал просто вставить строчку кода <div id="copy"></div>между словами, но вводимый текст появляется на новой строке

czukowski
29.01.2008, 23:42
Вопрос, а как сделать, что бы вводимый текст появлялся между определенными словами другого текста???
Ответ:
удобно воспользоваться каким-нибудь аналогом функции sprintf (довольно мощный есть к примеру тут: http://jan.moesen.nu/code/javascript/sprintf-and-printf-in-javascript/ (http://jan.moesen.nu/code/javascript/sprintf-and-printf-in-javascript/)), и полученную строку вставлять с помощью element.innerHTML (http://www.google.com/search?q=element.innerHTML)


попробовал просто вставить строчку кода <div id="copy"></div>между словами, но вводимый текст появляется на новой строке
Всё правильно, div - это блоковый элемент, как параграф. Попробуй например span.

Uncle JorJ
30.01.2008, 11:23
Вопрос, а как сделать, что бы вводимый текст появлялся между определенными словами другого текста???
попробовал просто вставить строчку кода <div id="copy"></div>между словами, но вводимый текст появляется на новой строке

Юзай не дивку а <span>

Sameccc
27.08.2008, 18:43
Извините за тупость, прост я новичок. Мне нужно наборот текст из странички, ну например: TEXT вставить в инпут из <td>TEXT</td>

Добавлено через 1 минуту
Подскажите, плиз!!!

Sameccc
28.08.2008, 13:13
всё разобрался. Нужно сделать примерно следующее:
<html>
<head>
<script type="text/JavaScript">
function inp()
{
document.getElementById("output").value=document.getElementById("copy").innerHTML;
}
</script>
</head>
<body onload="inp()">
<form>
<input type="text" id="output" value="">
</form>
<div id="copy">TEXT</div>
</body>
</html>

Sameccc
28.08.2008, 15:55
всё работает в предыдущем примере. Стоит мне его только вставить в готовый html-код - не хочет работать. В чём может быть проблема? Всё корректно отображается как нужно, но функция "inp()" почему-то отказывается работать :-(

brutka
03.10.2008, 10:25
покажи страницу, где вставлен код и не работает.