validation 相关问题

验证用于检查数据,以确保它符合为其设置的任何所需规范。通常,验证用于检查输入数据,以及在存储之前验证数据。

表单验证失败

我尝试创建用于发布新用户的表单,但遇到问题。 我使用引导表单验证(浏览器默认值)。 有一个按钮: 我尝试创建用于发布新用户的表单,但遇到问题。 我使用引导表单验证(浏览器默认值)。 有一个按钮: <button class="btn btn-primary btn-addUser" type="submit">Add User</button> 此按钮还具有根据输入的数据创建新帖子的功能: const addUsersBtn = document.querySelector(".btn-addUser"); // кнопка добавления поста в html addUsersBtn.addEventListener("click", postNewUser); // Запостить юзера function postNewUser(e) { e.preventDefault(); // записать value из инпутов формы const name = form.elements.namedItem("name").value; const username = form.elements.namedItem("username").value; const email = form.elements.namedItem("email").value; const phone = form.elements.namedItem("phone").value; const website = form.elements.namedItem("website").value; // создать объект нашего юзера из данных записанных в переменные из инпутов формы const newPost = { name: name, username: username, email: email, phone: phone, website: website, user_id: `id_${Math.random() * Math.random()}`, }; // создать пост createPost(newPost, (response) => { const card = newPostTemplate(response); container.insertAdjacentElement("afterbegin", card); form.reset(); initPopovers(); }); } 但是如果我使用 postNewUser 功能验证不起作用。 如果我从按钮验证中删除“btn-addUser”类。 我的代码来自 addUser.js 文件: // получаем нашу форму const form = document.forms["addUser"]; // создаём функцию "создать пост" function createPost(body, callback) { return new Promise((resolve, reject) => { const request = new XMLHttpRequest(); request.open("POST", "https://jsonplaceholder.typicode.com/posts"); request.addEventListener("load", () => { const response = JSON.parse(request.responseText); // console.log(response); if (request.status >= 400) { reject(request.response); } else { resolve(request.response); } callback(response); }); request.setRequestHeader("Content-type", "application/json; charset=UTF-8"); request.send(JSON.stringify(body)); }); } // шаблон для поста в котором он будет строится function newPostTemplate(post) { const card = document.createElement("div"); card.classList.add("card"); const cardBody = document.createElement("div"); cardBody.classList.add("card-body"); const userBtn = document.createElement("button"); userBtn.setAttribute("type", "button"); userBtn.classList.add("btn", "btn-info", "btn-lg"); userBtn.setAttribute("data-bs-toggle", "popover"); userBtn.setAttribute("data-bs-html", "true"); userBtn.setAttribute( "data-bs-title", "Additional information about the user: " ); userBtn.setAttribute( "data-bs-content", `Username: ${post.username}<br/>Email: ${post.email}<br/>Phone: ${post.phone}<br/> Website: ${post.website}` ); const title = document.createElement("h5"); title.classList.add("card-title"); title.textContent = post.name; userBtn.appendChild(title); cardBody.appendChild(userBtn); card.appendChild(cardBody); return card; } // кнопка добавления поста в html addUsersBtn.addEventListener("click", postNewUser); // Запостить юзера function postNewUser(e) { e.preventDefault(); // записать value из инпутов формы const name = form.elements.namedItem("name").value; const username = form.elements.namedItem("username").value; const email = form.elements.namedItem("email").value; const phone = form.elements.namedItem("phone").value; const website = form.elements.namedItem("website").value; // создать объект нашего юзера из данных записанных в переменные из инпутов формы const newPost = { name: name, username: username, email: email, phone: phone, website: website, user_id: `id_${Math.random() * Math.random()}`, }; // создать пост createPost(newPost, (response) => { const card = newPostTemplate(response); container.insertAdjacentElement("afterbegin", card); form.reset(); initPopovers(); }); } 我想问一些问题: 我可以创建两个按钮:第一个按钮没有“btn-addUser”类,第二个按钮有“btn-addUser”类吗?我想添加一个按钮禁用状态(引导程序),并在提交时删除它们,而没有“btn-addUser”类收到验证的积极响应。单击“btn-addUser”按钮后,此按钮将被禁用。 是真的?我不知道如何获得验证的积极响应。 或者也许我正在做垃圾,它可以做得更简单? postNewUser 函数中的自定义表单提交逻辑与浏览器内置的表单验证之间似乎存在冲突。当“btn-addUser”类出现在提交按钮上时,自定义逻辑将接管并跳过验证。 要解决此问题,您可以调整 postNewUser 函数以在创建新用户之前检查表单是否有效。方法如下: function postNewUser(e) { e.preventDefault(); if (form.checkValidity()) { // Form is valid, proceed with creating the new user // Add your custom logic here } else { // Form is invalid, trigger validation UI form.classList.add("was-validated"); } } 通过使用form.checkValidity()方法,您可以检查表单是否有效。如果是,则 if 块内的代码将运行并创建新用户。如果没有,else 块会将“was-validated”类添加到表单中,这是一个显示验证消息的 Bootstrap 类。 确保您的表单具有必要的 Bootstrap 验证属性和类,例如表单元素上的 novalidate 以及表单输入上的适当验证类。 通过这种方法,您可以保留“btn-addUser”按钮,并确保表单验证与自定义提交逻辑一起顺利运行。

回答 1 投票 0

使用数组进行正则表达式验证

我有一个数组 $array = ['download.png', 'download-1.png', 'download-2.png'] 我想要一个可以匹配所有三个元素的正则表达式。到目前为止我已经尝试并得到了类似的东西 /('."$

回答 2 投票 0

如何在按下 HTML 提交按钮后禁用该按钮?

我正在使用 PHP 和 JavaScript 开发一个注册页面。当用户按下“提交”按钮时,页面在重定向之前开始加载。如果用户再次按“提交”,则...

回答 1 投票 0

在网址中添加尾部斜杠(如果不存在)

我正在制作一个小型 Web 应用程序,用户在其中输入一个服务器 URL,通过 AJAX 请求从中提取大量数据。 由于用户必须手动输入 URL,人们通常会忘记该输入...

回答 10 投票 0

在网址中添加尾部斜杠(如果不存在)

我正在制作一个小型 Web 应用程序,用户在其中输入一个服务器 URL,通过 AJAX 请求从中提取大量数据。 由于用户必须手动输入 URL,人们通常会忘记该输入...

回答 10 投票 0

验证多行文本中以逗号分隔的可预测短语

我有一个文本区域框,用户可以在其中输入订单。 例如: 看北, 看南边, 卖7个木头, 看西 我需要一个符合以下规则的正则表达式: 每个订单均以

回答 2 投票 0

Google 是否更改了数据验证的处理方式?

我有以下在“onEdit”触发器上运行的脚本(该部分工作正常) 函数 onEdit() { var ss = SpreadsheetApp.getActiveSpreadsheet(); var Sheet = SpreadsheetApp.

回答 1 投票 0

插入数据验证

我正在尝试使用 Google Apps 脚本在 Gsheet 中插入单元格内下拉菜单(数据 > 验证 > 项目列表)。我想这样做是因为每次我使用电子表格时都会出现“项目列表...

回答 1 投票 0

Python 为什么 int("0") 返回 false

我正在尝试学习Python,但终其一生都无法弄清楚为什么会这样: i = raw_input("输入一个数字") 如果 int(i): 打印“是” 别的: 打印“假” 如果 i =... 则不会返回 true

回答 4 投票 0

正则表达式要求字符串中至少有 2 个字母

$pattern = "/[a-z]*[a-z]*/i"; if (!preg_match($pattern, $value)){ $this->error_name = "名称应至少包含两个字母。"; } 我正在尝试检查用户是否

回答 5 投票 0

检查整个字符串是否由 2 个字母组成

我想用正则表达式检查字符串。我想要一个 if 语句执行如下操作: 如果字符串包含超过 2 个字母字符,则执行某些操作。它区分大小写,不应该

回答 2 投票 0

如何验证电子邮件字符串?

一个简单的电子邮件验证脚本对我来说总是失败。 if(!preg_match('^[^@]{1,63} @ [^@]{1,255}$', $input)) { 返回假; } 它应该很简单,确保只有一个“@”符号,

回答 3 投票 0

验证字符串是否为字母数字,可选地在字符串中间用单独的白名单分隔符分隔

这就是我想要实现的目标: 第 1 部分:字符串必须以字母数字字符开头,然后可以有也可以没有点、下划线、连字符或空格。 第 2 部分:必须以字母数字结尾

回答 5 投票 0

验证 Flutter 中的提升按钮

我正在使用 Flutter 制作一个计算机动车辆税的应用程序。 当我输入车辆成本时,它的计算结果非常好。 但我想为其添加一个验证。当我不输入任何c...

回答 2 投票 0

如何在 C# 中使用 Google 电话库优化批量电话号码验证

我正在开发一项功能,允许用户导入包含 100,000 行 5 列的 CSV 文件。其中一列包含电话号码,在将其存储到

回答 1 投票 0

带有 pre=True 的 Pydantic root_validator 接收字典而不是实际的输入对象

我有两个pydantic模型,A和B。模型B是A的一种重构,并且应该能够本地解析它的值。 我构建了一个带有 pre=True 的 root_validator,它检查实例...

回答 1 投票 0

VPhoneInput(vue vuetify)的问题

我正在使用 VPhoneInput - Vuetify 3 和 Vue 3 的国际电话字段。(链接) 我想我已经正确安装了它们, main.js 从 'vue' 导入 { createApp } 从“./App.vue”导入应用程序 导入

回答 1 投票 0

将两个数据集与多个变量和中介进行匹配

我的匹配情况很复杂。 ASPH 数据集包含大学的课程列表和其他信息,OtherColleges 包含

回答 1 投票 0

验证字符串均为数字且具有限定长度

我只想验证字符串是否包含长度在 7 到 9 之间的“0-9”字符。 我拥有的是 [0-9]{7,9} 但这也匹配十个字符的字符串,这是我不想要的。

回答 2 投票 0

验证字符串都是具有限定长度的数字

我只想验证字符串是否包含长度在 7 到 9 之间的“0-9”字符。 我拥有的是 [0-9]{7,9} 但这也匹配十个字符的字符串,这是我不想要的。

回答 2 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.