2010-09-14 106 views
0

我有这样一个PHP:错误后提交一个表单

<?php 
...... 
?> 
<html> 
<head></head> 
<body> 
<div id="content"> 
<form id="myform" name="myform"> 
<?php include_once("ronny.php"); ?> 
..... 
<input type="button" value="Save" id="Save" name="Save" onclick="if(check123()==true){document.myform.submit()}" /> 
</div> 
</form> 
... 

现在,在这种情况下后,我点击保存我的萤火,并在IE错误是Object doesn't support this property or method有一个错误document.myform.submit is not a function。 如果我删除<?php include_once("ronny.php"); ?>一切都很好。

ronny.php是这样的:

<?php 

if(......)){ 

?> 
<div></div> 
<div></div> 
<SCRIPT LANGUAGE="JavaScript"> 
.... 
</SCRIPT> 
<?php } ?> 

如果我把包括在它的确定,以及顶部的PHP。

谢谢!

+0

哪里是你的myForm的功能? – Jordy 2010-09-14 13:37:41

回答

0
document.myform.submit() 

myform应该是表单的名称。 什么是check123()?功能?

+0

myform是表单的名称。是的,check123()是一个函数。 – Ronny 2010-09-14 13:38:28

+0

您应该使用document.getElementById(“myform”)。submit()而不是document.myform.submit()。推理,看到这个职位:http://stackoverflow.com/questions/2813582/javascript-window-object-element-properties – Timothy 2010-09-14 13:39:38

+0

尝试和 - 'document.getElementById(“myform”)。提交不是一个函数' – Ronny 2010-09-14 13:47:19

0

如果你想使用document.myform符号,你必须一个name=属性添加到窗体标签:

<form name="myform"> 
... 
</form> 

,或者如果你必须坚持与id版本,然后在JavaScript中使用此:

document.getElementById('myform').submit(); 

除此之外,什么在ronny.php功能?如果把它拿出来让表单起作用,那么显然ronny.php中的某些东西正在混淆你的HTML和/或Javascript并“破坏”了一些东西。

+0

我尝试添加名称属性,但仍然是同样的问题。 – Ronny 2010-09-14 13:48:51

+0

然后在生成的页面上查看源代码,看看该窗体的外观。不管你多么盯着你的PHP代码,在这种情况下,最好查看代码的输出,而不是盯着代码是什么。 – 2010-09-14 13:52:02

+0

好的,我发现了这个问题。在include页面中有另一个''。如果我将它改为''它是一样的吗? – Ronny 2010-09-14 13:58:14

0

我会做:

<input type="button" value="Save" id="Save" name="Save" onclick="check123();this.form.submit();" />