我在一个网站上遇到了一个javascript交互问题,我不知道发生了什么。
这个站点的基本要点是:一个单一的.php页面,在隐藏的div中包含多个包含。当单击"下一步"或"后退"按钮时,其中一个div变为活动的(可见的),并且它包含带有图像链接的问题。当其中一个链接被点击时,一个javascript函数被调用,它应该在一个隐藏的表单字段中设置一个值,这个值等于从链接传递给函数的值。
我不知道为什么它不工作。我已经使用警报进行了存根测试,一切都正确地通过了。偶尔它会对一个问题有效,但永远不会对所有问题都有效。任何帮助都将非常感激。你可以在这里找到源代码:
http://3 - 1. - faile test.appspot.com/kilt_page.php
在我看来,你在隐藏字段中设置了错误的值。
例如,如果我输入一个公司名称"foo inc",则该字段设置为:
<input type="hidden" value="company_name" id="company_name_answer">
不应该吗?
<input type="hidden" value="foo inc" id="company_name_answer">
我认为change_selection函数是错误的,你有:
function change_selection(selection, answer)
{
var selection = selection;
var answer = answer;
document.getElementById(answer).value = selection;
}
应该是…
function change_selection(selection, answer)
{
document.getElementById(answer).value = document.getElementById(selection).value;
}
如果其他人也有这个问题,我是这样解决的:
我为隐藏的表单输入添加了默认值。所以,与其:<input type='hidden' name='answer_name' value='' />
我有:<input type='hidden' name='answer_name' value='default' />