Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Как вставить текст из куков в input формы? (https://javascript.ru/forum/events/45544-kak-vstavit-tekst-iz-kukov-v-input-formy.html)

perfect 05.03.2014 03:15

Как вставить текст из куков в input формы?
 
Есть некое значение, которое генерируется скриптом, заносится в кукисы, и выводится через document.write

Нужно, чтобы этот текст вставлялся в поле формы как input value.

Задача:
// получить значение VisitorName через кукисы (get)
// и/или конвертировать "+ Who() +" в текст
// занести текст в input (document.getElementById('inputID').value = )

Кстати! На этом сайте используется эта функция.
На странице learn.javascript.ru/chat в поле ввода стоит по умолчанию мой логин. В адресе написано ?nick=mynick Наверное здесь сделано на php?

Как это сделать? Весь код ниже.

<script language="JavaScript"><!-- Begin Script
var expDays = 30;var exp = new Date();exp.setTime(exp.getTime() + (expDays*24*60*60*1000));
function Who(info){
var VisitorName = GetCookie('VisitorName')
if (VisitorName == null) {VisitorName = "Dear visitor";SetCookie ('VisitorName', VisitorName, exp);}
return VisitorName;}
function set(){ 
VisitorName = prompt("");SetCookie ('VisitorName', VisitorName, exp);}
function getCookieVal (offset) {var endstr = document.cookie.indexOf (";", offset);if (endstr == -1)
endstr = document.cookie.length;return unescape(document.cookie.substring(offset, endstr));}
function GetCookie (name) {var arg = name + "=";var alen = arg.length;var clen = document.cookie.length;var i = 0;while (i< clen) {var j = i + alen;if (document.cookie.substring(i, j) == arg)
return getCookieVal (j);i = document.cookie.indexOf(" ", i) + 1;if (i == 0) break;}
return null;}
function SetCookie (name, value) {var argv = SetCookie.arguments;var argc = SetCookie.arguments.length;var expires = (argc>2) ? argv[2] : null;var path = (argc >3) ? argv[3] : null;var domain = (argc >4) ? argv[4] : null;var secure = (argc >5) ? argv[5] : false;document.cookie = name + "=" + escape (value) +
((expires == null) ? "" : (";expires=" + expires.toGMTString())) +
((path == null) ? "" : (";path=" + path)) +
((domain == null) ? "" : (";domain=" + domain)) +
((secure == true) ? ";secure" : "");}
function DeleteCookie (name) {var exp = new Date();exp.setTime (exp.getTime() - 1);
var cval = GetCookie (name);document.cookie = name + "=" + cval + ";expires=" + exp.toGMTString();}
//--></script> 
<script language="JavaScript"><!--
document.write("" + Who() + ",")
//--></script>


document.write("" + Who() + ",")

danik.js 05.03.2014 03:22

Цитата:

Сообщение от perfect
Весь код ниже

Код нечитаемый абсолютно. Так что извиняй.

Zuenf 05.03.2014 07:50

Эм... Или я что-то не так понял или у тебя крыша едет?
Нужно просто имя из кукисов в инпут вставить?
У тебя в вопросе все уже описано, как сделать, правда код для данной задачи со множеством излишков, но может тебе это все нужно еще и для другой задачи.
Просто так не пробовал писать?
document.getElementById('inputID').value = Who();

perfect 05.03.2014 08:22

Цитата:

Сообщение от Zuenf (Сообщение 301128)
Просто так не пробовал писать?
document.getElementById('inputID').value = Who();

Раньше не пробовал. Сейчас написал и заработало! Решение оказалось настолько простым...


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