我刚刚完成了使用JavaScript提交表单的代码。
除Internet Explorer 6外,它适用于所有浏览器。
我在下面粘贴了我的HTML表单和JavaScript代码。
你能找到它的问题吗?
JavaScript的:
<script type="text/javascript" language="javascript">
function dodelete(image_id)
{
if (confirm("Are you sure want to delete this image?"))
{
document.getElementById('image_id').value=image_id;
document.del_form.submit();
}
}
</script>
HTML代码:
<form name="del_form" id="del_form" method="post">
<input type="hidden" name="do" id="do" value="delete" />
<input type="hidden" name="image_id" id="image_id" />
</form>
函数调用代码:::
<p class="video">
<a href="javascript:void(0)" onclick="dodelete('<?php echo $row['image_id']?>')">
<img src="<?php echo $cfg->admin_image_path; ?>/delete_icon1.gif" border="0" alt="Delete"/>
</a>
</p>
答案 0 :(得分:1)
返回的内容:
document.getElementById('image_id')
它返回元素集合的一个INPUT
元素?
尝试替换:
document.getElementById('image_id').value=image_id;
使用:
document.del_form.image_id.value=image_id;
答案 1 :(得分:0)
OnSubmit调用javascript会有所帮助。
<form name="del_form" id="del_form" onsubmit="dodelete(value);" >
<input type="hidden" name="do" id="do" value="delete" />
<input type="hidden" name="image_id" id="image_id" />
</form>
答案 2 :(得分:0)
有两件事我想尝试,我不知道为什么或什么时候不起作用似乎是随机的,首先尝试为提交设置超时:
document.doSubmit = function() {
document.del_form.submit();
}
setTimeout("document.doSubmit();", 100);
有时,点击后只需点击return
:
<input type="hidden" name="image_id" id="image_id" onclick="submitFormFunction(); return false;” />
答案 3 :(得分:0)
如果替换会发生什么:
document.del_form.submit();
使用:
document.getElementById('del_form').submit()
答案 4 :(得分:0)
尝试将method='POST'
移至form
元素定义的开头。
我的意思是 - method
属性应该是form
元素的第一个属性。
如果我记得很清楚,这解决了在IE6上提交表单的一些问题。
答案 5 :(得分:0)
我已经编辑了一些代码。
<script type="text/javascript" language="javascript">
function dodelete(image_id)
{
if (confirm("Are you sure want to delete this image?"))
{
document.getElementById('image_id').value=image_id;
document.del_form.submit();
}
return false;
}
</script>
和带有一些测试Image ID
的HTML,它可以在IE6中运行
<form name="del_form" id="del_form" method="post" onSubmit="return(dodelete('2'));">
<input name="do" id="do" value="delete" />
<input name="image_id" id="image_id" />
<input type="submit" value="Submit">
</form>
答案 6 :(得分:0)
让我们再试一次:)。
更换后会发生什么:
onclick="dodelete('<?php echo $row['image_id']?>')">
使用:
onclick="dodelete('<?php echo $row['image_id']?>'); return false;">
对您的代码究竟不起作用的是什么?抛出JS错误,没有服务器请求,请求中的值是空的?
(也许是最重要的问题) - action
表单的del_form
属性在哪里?
答案 7 :(得分:0)
替换
<a href="javascript:void(0)"
带
<a href="#"
对于触发JS提交的dom,IE有问题。