这有什么不对,我想将值传递给特定表单的字段
var formid = 'addtaskform{/literal}{$smarty.session.formno}{literal}';
document.formid.title.value = 'yeah';
我收到此错误
TypeError: document.getElementById(...) is null
答案 0 :(得分:1)
在这种情况下连接没有问题。你可能做错了。
请看以下示例:
PHP文件:
$_SESSION['formno'] = 5;
$smarty->display('test.tpl');
Smarty模板文件:
<input type="text" id="addtaskform5" value="5" />
<script type="text/javascript">
{literal}
var formid = 'addtaskform{/literal}{$smarty.session.formno}{literal}';
document.getElementById(formid).value = 'yeah';
{/literal}
</script>
工作正常。输入值已从5
更改为yeah
答案 1 :(得分:0)
您很可能在您的网站中没有ID formid
的表单元素,至少它不是您实际想要实现的目标。
您正在寻找的是:
document[formid].title.value = 'yeah';
document.formid
(Dot Notation):获取 id formid
的元素
document[formid]
(Bracket Notation):获取存储在值formid