2010-09-14 100 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();" />