首页 > 解决方案 > TypeError: $(...).getValue 不是函数

问题描述

我有这个 Alpaca 表单
我想获取表单的内容(用户输入的值)
所以我在 alpaca 网站上找到了一个示例
当按钮位于 this.getValue(); 工作正常
但是从外面我得到 TypeError: $(...).getValue is not a function
我做错了什么?

$("#field1").alpaca({
    "data": {
        "firstName": "John",
        "lastName": "McClane"
    },
    "schema": {
        "type": "object",
        "properties": {
            "firstName": {
                "type": "string",
                "title": "First Name"
            },
            "lastName": {
                "type": "string",
                "title": "Last Name"
            }
        }
    },
    "options": {
        "form": {
            "buttons": {
                "submit": {
                    "title": "Serialize - working fine....",
                    "click": function() {
                        var value = this.getValue();
                        alert(JSON.stringify(value, null, "  "));
                    }
                }
            }
        }
    }
});
        <!-- jquery -->
        <script type="text/javascript" src="//code.jquery.com/jquery-1.11.1.min.js"></script>
 
        <!-- bootstrap -->
        <link type="text/css" rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.2/css/bootstrap.min.css" />
        <script type="text/javascript" src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.2/js/bootstrap.min.js"></script>
 
        <!-- handlebars -->
        <script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/handlebars.js/4.0.5/handlebars.js"></script>
 
        <!-- alpaca -->
        <link type="text/css" href="//cdn.jsdelivr.net/npm/alpaca@1.5.27/dist/alpaca/bootstrap/alpaca.min.css" rel="stylesheet" />
        <script type="text/javascript" src="//cdn.jsdelivr.net/npm/alpaca@1.5.27/dist/alpaca/bootstrap/alpaca.min.js"></script>
        
<script src="https://cdn.jsdelivr.net/npm/handlebars@latest/dist/handlebars.js"></script>

<div id="field1" ></div>
<button onclick="console.log(JSON.stringify($('#field1').getValue(), null, '  '))">Serialize - Not working ....</button>

标签: alpacajs

解决方案


您应该在和alpaca()之间添加$('#field1')getValue()

JSON.stringify($('#field1').alpaca().getValue()

这是一个小提琴


推荐阅读