我正在使用Bootstrap并尝试将表单提交到PHP页面。但form
未提交。
<div class="container">
<div class="row">
<div class="col-md-5 col-sm-12">
<ul class="timeline" data-offset-top="3">
<li>
<div class="timeline-panel">
<form name="Wall_Post" id="Wall_Post" action="/update.php" method="post" role="form" enctype="multipart/form-data" class="facebook-share-box">
<div class="timeline-body">
<div class="share-form">
<ul class="post-types">
<li class="post-type">
<a class="status" id="shareType" href="#"><i class="fa fa-file"></i> Status</a>
</li>
<li class="post-type">
<a class="photos" id="shareType" href="#"><i class="fa fa-camera"></i> Photos</a>
</li>
<li class="post-type">
<a class="videos" id="shareType" href="#"><i class="fa fa-film"></i> Video</a>
</li>
<li class="post-type">
<a class="location" id="shareType" href="#"><i class="fa fa-map-marker"></i> Place</a>
</li>
</ul>
<div class="share">
<div class="arrow"></div>
<div><textarea name="message" cols="40" rows="10" id="status_message" class="form-control message" style="height: 62px; overflow: hidden;" placeholder="What's on your mind ?"></textarea> </div>
<div class="image hide">
<input type="file" class="form-control" name="image" id="image" />
</div>
<div class="video hide">
<input type="text" class="form-control" placeholder="Youtube or Vimeo video URL" id ="videoUrl" name="videoUrl"/>
</div>
<div class="place hide">
<input id="geocomplete" class="form-control" type="text" name="location" placeholder="Enter a location" />
<div class="map_canvas"></div>
<input type="hidden" name="lat" />
<input type="hidden" name="lng" />
</div>
<input type="hidden" name="shareType" class="shareType" value="status" />
</div>
</div>
</div>
<div class="timeline-footer clearfix">
<div class="pull-right">
<input type="submit" name="submit" value="Post" id="btn-share" class="btn btn-primary" />
</div>
</div>
</form>
</div>
</li>
</ul>
</div>
</div>
</div>
我也在我的网站上使用jquery v1.11.1
,相同的代码在其他页面中工作正常,其中不包括jquery v1.11.1
。另一件事我不想使用ajax提交表单。有可能吗?
答案 0 :(得分:1)
你的html工作正常(尽管有一些重复的id ..)。当我单击提交按钮时,表单提交到/update.php。所以它必须是javascript阻止提交表单。你有任何javascript文件吗?如果是,他们是否会提交表格?
编辑:
我在使用javascript文件发表评论后发现了这个问题:在你的script.js中,你在第12行做了$("form").submit()
。在这个函数的最后,你做return false;
。这会覆盖每个表单的提交过程。删除第47行的return false;
以及第45行的那个(或者只删除switch语句中的整个默认部分)!
答案 1 :(得分:0)
一个错误是您有多个相同ID的实例(&#34; shareType&#34;) - 我不知道是否会导致问题 - 但您应该更改这些是每个链接的唯一ID。复制ID的示例如下:
<a class="status" id="shareType" href="#"><i class="fa fa-file"></i> Status</a>
答案 2 :(得分:0)
输入action="/update.php"
尝试使用action="../update.php
答案 3 :(得分:0)
正如@Laurens所说 - 你在该函数的末尾做了一个返回false,但是你正在根据提交的表单的id做一个switch语句,默认的操作是返回false,如果是身份不是三个陈述中的一个。这意味着此表单(不是列出的三个表单之一)将触发默认操作并返回false - 因此不提交表单。您需要为此表单添加一个开关案例,就像您与其他人一样