Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 29.08.2012, 12:02
Новичок на форуме
Отправить личное сообщение для Alex7778 Посмотреть профиль Найти все сообщения от Alex7778
 
Регистрация: 27.08.2012
Сообщений: 9

Хорошо, буду использовать bb-теги.
name[nameid] - переменная в smarty.
Ответить с цитированием
  #12 (permalink)  
Старый 29.08.2012, 12:31
Аватар для bes
bes bes вне форума
Профессор
Отправить личное сообщение для bes Посмотреть профиль Найти все сообщения от bes
 
Регистрация: 22.03.2012
Сообщений: 3,744

Не знаю как там в smarty, но вот пример как переменные php добавляются в html-код
$a = 'yes';
$str = '<button onclick = "clicks(\'' . $a . '\')">click</button>';
echo $str;

function clicks(value) {
	alert(value);
}



тогда вообще без name
<form action="http://javascript.ru" method="get">
	<a href="#">param 1</a>
	<a href="#" >param 2</a>
	<input type="hidden" name="name[nameid]">
</form>

<script>
window.onload = function () {
	document.forms[0].onclick = function (e)  {
		var inp = this.children[2];//здесь получаем ссылку на input
		e = e || event;
		var target = e.target || e.srcElement;
		if (target.tagName == 'A') {
			if (target == this.children[0]) {
				inp.value = 1;
			} else {
				inp.value = 2;
			}
			alert(inp.value)
			this.submit();
		}
	}
}
</script>

Последний раз редактировалось bes, 29.08.2012 в 14:45.
Ответить с цитированием
  #13 (permalink)  
Старый 29.08.2012, 14:22
Новичок на форуме
Отправить личное сообщение для Alex7778 Посмотреть профиль Найти все сообщения от Alex7778
 
Регистрация: 27.08.2012
Сообщений: 9

Хорошо, буду использовать bb-теги.
name[nameid] - переменная в темплейте, и исходный код вполне работает.
Строка взята из рабочего кода:
<input type="hidden" name="name[nameid]"  value="1">

При отправки формы, происходит передача параметра. В адресной строки я вижу:
go.php?name[nameid]=1
Ответить с цитированием
  #14 (permalink)  
Старый 29.08.2012, 14:26
Новичок на форуме
Отправить личное сообщение для Alex7778 Посмотреть профиль Найти все сообщения от Alex7778
 
Регистрация: 27.08.2012
Сообщений: 9

Дело в том, что на страницу go.php необходимо передать значение параметра name[nameid]. Этот параметр нельзя изменить.
Ответить с цитированием
  #15 (permalink)  
Старый 29.08.2012, 14:45
Аватар для bes
bes bes вне форума
Профессор
Отправить личное сообщение для bes Посмотреть профиль Найти все сообщения от bes
 
Регистрация: 22.03.2012
Сообщений: 3,744

Сообщение от Alex7778
При отправки формы, происходит передача параметра. В адресной строки я вижу:
go.php?name[nameid]=1
это логично так как передача идёт методом get

Сообщение от Alex7778
Строка взята из рабочего кода:
<input type="hidden" name="name[nameid]"  value="1">
этот name и оставьте, последний js-код от него не зависит, сейчас подправлю
Ответить с цитированием
  #16 (permalink)  
Старый 29.08.2012, 16:37
Новичок на форуме
Отправить личное сообщение для Alex7778 Посмотреть профиль Найти все сообщения от Alex7778
 
Регистрация: 27.08.2012
Сообщений: 9

Всё заработало! Большое спасибо.
Сразу возник такой вопрос. Дело в том, что каждая из кнопок должна состоять из двух частей (для того, чтобы назначить разные стили). Помогите пожалуйста усовершенствовать скрипт.

<form action="http://javascript.ru" method="get">
	<a href="#" class="style1">param 1</a><a href="#" class="style2">param 1</a>
	<a href="#" class="style1">param 2</a><a href="#" class="style2">param 2</a>
	<input type="hidden" name="name[nameid]">
</form>
Ответить с цитированием
  #17 (permalink)  
Старый 29.08.2012, 16:58
Аватар для bes
bes bes вне форума
Профессор
Отправить личное сообщение для bes Посмотреть профиль Найти все сообщения от bes
 
Регистрация: 22.03.2012
Сообщений: 3,744

<form action="http://javascript.ru" method="get">
	<a href="#" class="style1">param 1</a><a href="#" class="style2">param 1</a>
	<a href="#" class="style1">param 2</a><a href="#" class="style2">param 2</a>
	<input type="hidden" name="name[nameid]">
</form>

<script>
window.onload = function () {
	document.forms[0].onclick = function (e)  {
		var inp = this.children[this.children.length - 1];//здесь получаем ссылку на input
		e = e || event;
		var target = e.target || e.srcElement;
		if (target.tagName == 'A') {
			if (target == this.children[0] || target == this.children[1]) {
				inp.value = 1;
			} else {
				inp.value = 2;
			}
			alert(inp.value)
			this.submit();
		}
	}
}
</script>
Ответить с цитированием
  #18 (permalink)  
Старый 29.08.2012, 17:48
Новичок на форуме
Отправить личное сообщение для Alex7778 Посмотреть профиль Найти все сообщения от Alex7778
 
Регистрация: 27.08.2012
Сообщений: 9

Всё получилось. Спасибо!
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужен скрипт Samfer Работа 6 08.04.2012 14:26
Кнопка ссылкой, для случаев если js отключен clear Events/DOM/Window 1 27.07.2011 09:08
Появляющаяся/исчезающая кнопка при прокрутке страницы MailRes Элементы интерфейса 2 22.06.2011 11:49
Подскажите по CSS меню Александр_1988 Элементы интерфейса 1 17.05.2010 11:58
Пожалуйста помогите с передачей параметра xela1980 jQuery 10 14.12.2009 15:04