Не знаю как там в 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>