我正在尝试构建一个ajax反馈表单但是我在显示它时遇到了问题。显示反馈图像,但是当我点击它时没有任何反应。
我的表格:
<div id="feedback">
<img id="feedback_link" src="images/feedback.gif" href="javascript:open('feedback_form_wrapper');" />
<div id="feedback_form_wrapper" style="display:none;">
<a class="close light" style="float:right;margin-right:5px;" href="javascript:open('feedback_form_wrapper');" >CLOSE</a>
<form id="feedback_form" action="." onsubmit="submit(); return false;">
<div style="margin: 8px; width: 184px; float: left;">
<select name="subject">
<option value="bug">Found A Bug</option>
<option value="typo">Found A Typo</option>
<option value="other">Other</option>
</select>
Email:<br/>
<input type="text" class="email" name="email" /><br/>
<textarea name="body" id="feedback_body" style="height: 180px; margin-top: 8px;">Enter Feedback Here.</textarea>
<input type="submit" class="input_submit_button" value="submit" />
</div>
</form>
</div>
</div>
JavaScript:
function open(id){
if (document.getElementById) { // DOM3 = IE5, NS6
document.getElementById(id).style.display = 'block';
}
else {
if (document.layers) { // Netscape 4
document.id.display = 'block';
}
else { // IE 4
document.all.id.style.display = 'block';
}
}
}
function close(id){
if (document.getElementById) { // DOM3 = IE5, NS6
document.getElementById(id).style.display = 'none';
}
else {
if (document.layers) { // Netscape 4
document.id.display = 'none';
}
else { // IE 4
document.all.id.style.display = 'none';
}
}
}
答案 0 :(得分:2)
我刚刚尝试了你的代码并发现了问题,你有一个带有href的img标签
href属性用于锚点,而不是img
使图像更改href为onclick
另外,将open()函数的名称更改为其他名称,open已经是javascript中的函数。
即
<img id="feedback_link" src="images/feedback.gif" onclick="show('feedback_form_wrapper');" />
function show(id) { ...