我试图覆盖HTML表单中提交按钮的默认行为,以便能够在实际踢出表单操作之前加载JQuery动画。 当我从IDE运行HTML文件时,JQuery正常运行,但是当我从瓶子框架加载它时,它只是自动跳到表单提交。
这就是我所拥有的:
瓶
@route('/')
def root():
return template('output_template.html', results=False)
@route('/lookup', method='POST')
def lookup():
'''
HTML
<form action="/lookup" method="post" class="col s6">
<div class="row">
<h4 class="left-align"> Property Search</h4>
<div class="col s6">
<div class="row">
<div class="input-field col s12">
<input name="POSTCODE" id="postcode" type="text" class="validate">
<label for="postcode">Post code</label>
</div>
</div>
<div class="row">
<div class="input-field col s12">
<button class="btn waves-effect waves" type="submit" id="submit">Submit</button>
<button class="btn waves-effect waves blue-grey" type="reset" value="Reset" id="reset">Reset</button>
</div>
</div>
</div>
</div>
</form>
JQUERY
$(document).ready(function(){
$("form").submit(function(e){
e.preventDefault();
alert('Started Form Submission')
$("#content").hide("slow");
$("#loading").show();
delay(4);
$("form").submit();
});
});
关于什么是错的任何想法?
答案 0 :(得分:0)
如果您的JQuery代码位于自己的文件中,Bottle
很可能不知道如何提供它,因为您只有'/'
和'/lookup'
的路由。看看瓶中的routing static files:
from bottle import static_file
@route('/static/<filename>')
def server_static(filename):
return static_file(filename, root='/path/to/your/static/files')
不要忘记相应地更改HTML标题中的脚本位置。
答案 1 :(得分:0)
<强>解决:强>
Bottle没有在页面底部呈现JQuery脚本。我把它改成了头,它现在正常工作。 谢谢你