提问人:Brént Russęll 提问时间:7/18/2023 更新时间:7/18/2023 访问量:40
surveyjs 验证未命中后端,开发工具网络选项卡中没有任何内容,文本框正常工作
surveyjs validation not hitting backend, nothing in dev tools network tab, text box works as normal
问:
以下是从我的 surveyjs 实现中获取的 json。在 10 页的调查中,除了下面显示的第 1 页外,一切正常。它加载良好,就像文本框一样,但是,它应该检查 http://www.example.com/check_application_code.php onblur 或人们何时单击下一个(我不在乎哪个)。我在控制台中没有看到错误,在网络选项卡中没有看到任何事情发生,当我在服务器上查看访问日志时,单击下一步时没有击中后端。
{
"showQuestionNumbers": false,
"checkErrorsMode": "onValueChanged",
"pages": [
{
"name": "page1",
"description": "Application Code",
"elements": [
{
"type": "text",
"name": "applicationCode",
"title": "You need an application code to apply. Please enter your code below.",
"isRequired": true,
"validators": [
{
"type": "async",
"text": "Invalid application code.",
"url": "http://www.example.com/check_application_code.php",
"dataType": "json",
"method": "get",
"asyncValidators": [
{
"name": "backendValidation",
"func": "function(params) { return params.hasOwnProperty('valid') && params.valid === true; }"
}
]
}
]
}
]
},
以下是我用来加载 surveyjs 的 JS 脚本:
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script src="https://unpkg.com/[email protected]/dist/inputmask.js"></script>
<script src="https://unpkg.com/nouislider/dist/nouislider.min.js"></script>
<link href="https://unpkg.com/survey-jquery/defaultV2.min.css" type="text/css" rel="stylesheet">
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css">
<script type="text/javascript" src="https://unpkg.com/survey-jquery/survey.jquery.min.js"></script>
<script src="https://unpkg.com/[email protected]/surveyjs-widgets.min.js"></script>
<link rel="stylesheet" href="https://unpkg.com/nouislider/dist/nouislider.min.css" />
后端确实有效。当我使用浏览器调用它时,它会显示在日志中并回复以下内容:
{"valid":false,"message":"No application code provided."}
不知道下一步该去哪里让它工作。任何帮助都是值得赞赏的
答:
0赞
Brént Russęll
7/18/2023
#1
我做错了。您需要创建一个 javascript 函数来检查后端。据我所知,它没有内置于 surveyjs 中。这里有一个例子:https://surveyjs.io/form-library/examples/javascript-async-form-validation/jquery
评论