2011-10-28 58 views
-1

我很难找出为什么代码不工作... 所以有一个表单提交按钮,应该在请求后被禁用已发送。

PHP:

<form action="buy.php" method="post" onsubmit="zapret()"> 
.... 
<input id="submitOtbor" type="submit" name="submit" value="Отправить" /> 
</form> 

的javascript:

function zapret() 
{ 
    var btn = document.getElementById(\'submitOtbor\').disabled = true; 
    $(\'#result_5\').show(); 
    return false; 

} 

做好后,提交按钮在buy.php不能赶上变量从按下isset($ _ POST [ '提交'])形式...

有人可以帮我吗?

+0

你为什么要逃避JavaScript中的单引号? – Birey

+0

,因为最初的代码包含在php中:echo'some code here。'; –

回答

3

您禁用了提交按钮。根据定义,禁用的控件不是“成功的”,并且不会将数据发送到服务器。

如果您希望数据显示,请不要禁用该按钮。 (你也可以用相同的名字生成一个隐藏的输入,但是确实不要禁用提交按钮,当请求失败时很难重新提交表单)。

+0

感谢您的帮助!现在代码工作正常。我真的很高兴))) –

1

那么为什么要依赖于禁用的控件(这反过来不会被继续 - 所有浏览器忽略禁用控件的默认行为)?

您随时可以查询!empty($_POST)。或者,您可以添加一个隐藏字段来表示表单的意图。例如

<input type="hidden" name="action" value="create|read|delete" /> 

在提交被冒充。

+1

感谢您的帮助!现在代码工作正常。我真的很开心 ))) –

相关问题