Динамическая ссылка
В общем есть форма. Она генерируется из PHP. На форме есть input text
<input id ="add4" name="add4" type="text" maxlength="2" style="width:30px" value=""> И есть ссылка <a href="mainmenu.php?add=3&gr=1">Погнали!</a> Вопрос: как при изменении текстового поля add4 или при клике на ссылку , изменить в ссылке в адресе параметр add co значения "3" на то, что введено в текстовое поле? |
При текущих условиях:
$('a').click(function(){ this.href = "mainmenu.php?add="+$('#add4')[0].value+"&gr=1" }); |
Сделал вот так:
<HTML> <head> <SCRIPT LANGUAGE="JavaScript"> function vasya(){this.href = "mainmenu.php?add="+$('#add4')[0].value+"&gr=1"}; </script> </head> <body> <input id ="add4" name="add4" type="text" maxlength="2" style="width:30px" value=""> <a href="mainmenu.php?add=3&gr=1" onClick="vasya()">Погнали!</a> </body> </HTML> Но оно не работает..( Что не так? |
Demonuka, this - не ссылка, а глобальный объект. Как вариант, сделать так:
<HTML> <head> <SCRIPT LANGUAGE="JavaScript">// LANGUAGE="JavaScript", блеать!!! function vasya(a){a.href = "mainmenu.php?add="+$('#add4')[0].value+"&gr=1"}; </script> </head> <body> <input id ="add4" name="add4" type="text" maxlength="2" style="width:30px" value=""> <a href="mainmenu.php?add=3&gr=1" onClick="vasya(this)">Погнали!</a> </body> </HTML> |
P.S. Только работать не будет, потому что переменная $ - не объявлена как функция. И атрубит LANGUAGE не поможет. Попробуй комментарий:
<SCRIPT LANGUAGE="JavaScript"><!-- // 2014 год на дворе, блеать! Какой, нахер, LANGUAGE="JavaScript"! //--></script> А если серьёзно, подключи jQuery, и пиши как <HTML> <head> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.js"></script> <script> $(function () { $("a").on("click", function () { $(this).attr("href", "mainmenu.php?add=" + $('#add4').val() + "&gr=1"); }); }); </script> </head> <body> <input id ="add4" name="add4" type="text" maxlength="2" style="width:30px" value=""> <a href="mainmenu.php?add=3&gr=1">Погнали!</a> </body> </HTML |
Спасибо! Так работает! )
|
Без jQuery
<HTML> <head></head> <body> <input id="add4" name="add4" type="text" maxlength="2" style="width:30px" value=""> <a href="mainmenu.php?add=3&gr=1">Погнали!</a> <script> var inp = document.getElementById("add4"); var links = document.getElementsByTagName("a"); //document.links links[0].onclick = function () { this.href = "mainmenu.php?gr=1&add=" + inp.value; } </script> </body> </HTML> |
Часовой пояс GMT +3, время: 06:50. |