【发布时间】:2017-11-16 16:18:39
【问题描述】:
我正在尝试为我的网站实现一个带有表单(搜索字段和提交按钮)的可折叠侧边栏。
我已经引用为脚本:
https://code.jquery.com/jquery-1.11.3.min.js
和
https://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js
但是,在这种组合中,表单不会提交,而是似乎将 get 参数应用于 URL,然后触发某种形式的 preventDefault。
好像我使用的是旧版本的 jQuery ,但是当我尝试更新到:
https://code.jquery.com/jquery-3.2.1.min.js
我注意到我的可折叠菜单不再起作用并且完整的样式被破坏了。我也不能把它放在一边,因为他们大多已经在使用 jQuery。
示例 1(折叠有效,但表格无效):
<html>
<head>
<title>Test form</title>
<meta charset="utf-8">
<script src="https://code.jquery.com/jquery-1.11.3.min.js"></script>
<script src="https://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js"></script>
</head>
<body>
<div data-role="page" id="about">
<div data-role="header">
<h1>Header</h1>
</div>
<div data-role="main" class="ui-content">
<div data-role="collapsible">
<h1>Search</h1>
<form method="get">
<input name="test" type="text">
<button type="submit">Send</button>
</form>
</div>
</div>
</div>
</body>
</html>
示例 2(表单有效但无法折叠):
<html>
<head>
<title>Test form</title>
<meta charset="utf-8">
<script src="https://code.jquery.com/jquery-3.2.1.min.js"></script>
<script src="https://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js"></script>
</head>
<body>
<div data-role="page" id="about">
<div data-role="header">
<h1>Header</h1>
</div>
<div data-role="main" class="ui-content">
<div data-role="collapsible">
<h1>Search</h1>
<form method="get">
<input name="test" type="text">
<button type="submit">Send</button>
</form>
</div>
</div>
</div>
</body>
</html>
对于第一个示例,我还尝试声明一个输入类型按钮,而不是使用手动提交和触发它:
$('#submitbutton').click(function() {
$('#myform').submit();
});
没有成功。
提前致谢!
【问题讨论】:
标签: javascript jquery html css forms