【问题标题】:Jquery submit() function doesn't workJquery submit() 函数不起作用
【发布时间】:2012-10-10 03:12:24
【问题描述】:

这是我的代码:

function checkupload(){
if(upload == false)
{
    alert("Please upload a file");
    return false;
}
(...)
$('#download_form').submit();
 alert('submitted');
}

My HTML:

<form action="http://localhost/rendu/download.php" method="post" id="download_form">
    <input type="hidden" name="57" id="in_57"/>
    <input type="hidden" name="72" id="in_72"/>
    <input type="hidden" name="png" id="in_png"/>
    <input type="hidden" name="ico" id="in_ico"/>

<a onclick='checkupload()'><img src="images/download_normal.png" onmouseover="mover()" onmouseout="mout()"/></a>
</form>

无论我做什么,表单都不会被提交。我查看了请求,并没有向 download.php 页面发送请求,但显示了警报消息。

我错过了什么? 谢谢。

【问题讨论】:

  • 它在前面的代码中定义。控制台没有错误。
  • jsfiddle from cljk answer below ( jsfiddle.net/FXd8p ) 复制您的代码,并提交表单。所以肯定还有其他我们不知道的东西。
  • 我使用的是 Google Chrome 版本 23.0.1255.0 (154635)

标签: jquery html forms submit


【解决方案1】:

您混淆了两件事:绑定到事件处理程序和调用表单提交。

比较 http://jsfiddle.net/FXd8p/

http://api.jquery.com/submit/

【讨论】:

  • 我认为你是对的。那么如何从 JavaScript 提交表单呢?
  • 您当前的版本(使用 submit())应该可以工作 - 但请检查控制台。也许“上传”(第 2 行)没有在别处定义,脚本失败。
【解决方案2】:

调用 submit 而不将警报放入其中。

$('#download_form').submit();

【讨论】:

  • 我一开始就是这样做的,但结果是一样的。
  • @Adil:没有人能够访问您本地主机上的站点。
  • 是的,我创建了另一个 html 页面,该页面适用于以下代码:
    localhost/rendu/download.php" method="post">
  • 是的,@calvinf,我只是想确保他的网址有效。
猜你喜欢
  • 1970-01-01
  • 2014-12-17
  • 2012-05-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多