没有操作的 jQuery Mobile 表单给出错误消息:“错误加载页面”

Posted

技术标签:

【中文标题】没有操作的 jQuery Mobile 表单给出错误消息:“错误加载页面”【英文标题】:jQuery Mobile form without action gives error message: "error loading page" 【发布时间】:2018-01-21 04:26:24 【问题描述】:

所以我有一个带有 jQ​​uery Mobile 的 html 文档和一个像这样的表单元素:

<head>

<!-- Include jQuery Mobile stylesheets -->
<link rel="stylesheet" href="lib/jquery.mobile-1.4.5.min.css">
<!-- Include the jQuery library -->
<script type="text/javascript" src="lib/jquery-1.11.3.min.js"></script>
<!-- Include the jQuery Mobile library -->
<script type="text/javascript" src="lib/jquery.mobile-1.4.5.min.js">
</script>

</head>

<body>

<form onsubmit="myFunction()" id="myForm">

    <input type="text">

</form>

<button type="submit" form="myForm">Submit</button>

<script>
    function myFunction() 
        //does somethign with form values
    

</script>

</body>

提交表单时,我希望 JavaScript 处理字段值(通过 onsubmit 调用的函数。我不想将其发送到另一个文档。这就是为什么我省略了 @987654325 @ 属性。但是,当我点击提交时,jQuery Mobile 给我以下消息:“错误加载页面”(见图)。我该怎么办?我需要提交表单,因为我需要表单来验证字段当按钮被点击时。这就是为什么我不能只制作一个按钮,onclick 调用一个函数来获取字段的值。

非常感谢任何帮助! 提前致谢!

【问题讨论】:

data-ajax="false" 添加到表单中。 【参考方案1】:

您可以尝试通过提交form 并从js 返回false 来阻止event 生成,以便调用js 函数但不提交form

<form onsubmit="myFunction(event)" id="myForm">
                    <!--   ^^^^^ -> pass the event -->
    <input type="text">

</form>

<button type="submit" form="myForm">Submit</button>

<script>
    function myFunction(e) 
                      //^ get the event so we can prevent
        e.preventDefault();

        //does somethign with form values

        return false;
    

</script>

【讨论】:

以上是关于没有操作的 jQuery Mobile 表单给出错误消息:“错误加载页面”的主要内容,如果未能解决你的问题,请参考以下文章

jQuery Mobile:如何正确提交表单数据

在 jQuery Mobile 中操作历史

为啥没有提交表单?

如何在 JQuery Mobile for iOS 中发生页面更改时添加一些操作

将值(设置)从 jQuery Mobile 1.4 表单中取出并返回到 jQuery Mobile 1.4 表单中。怎么做?

jQuery Mobile-jquery Mobile 怎么用ajax提交表单