javascript - 通过 JS 设置时,引导输入验证消息不显示 php
问题描述
我正在尝试使用引导程序 4 在 html 表单上使用 .setCustomValidity() 和 .invalid-feedback 类设置错误消息。
因此,当用户验证表单时,JS 脚本会检查输入,如果有错误,请设置适当的消息。我想让我的网站完全多语言化,所以我制作了随浏览器语言变化的全局变量,但是当设置这些变量时,网页上没有显示任何内容,我发现我的 php 设置了围绕它的注释标签。
例如 :
<div class="col-md-4">
<input type="text" class="form-control" id="first_name" placeholder="<?php echo INP_FIRSTNAME; ?>" name="fname" autocomplete="given-name" required>
<div class="invalid-feedback" id="fname-feedback"></div>
</div>
脚本 :
let fname_feedback = document.getElementById("fname-feedback");
let fname_i = document.getElementsByName("fname")[0];
fname_feedback.innerHTML = "<?php echo FDB_LENGTH ?>";
fname_i.setCustomValidity("Not valid");
然后我的 div 包含这个而不是 FDB_LENGTH 的值:
<!--?php echo FDB_LENGTH ?-->
在设置 innerHTML 之前,我尝试从常量中设置变量,但之后不再显示任何内容,因此如果有人可以帮助我或进行一些修复,将不胜感激!
谢谢阅读。
解决方案
请记住,PHP 变量$
前面有:
<div class="col-md-4">
<input type="text" class="form-control" id="first_name" placeholder="<?php echo $INP_FIRSTNAME; ?>" name="fname" autocomplete="given-name" required>
<div class="invalid-feedback" id="fname-feedback"></div>
</div>
脚本:
let fname_feedback = document.getElementById("fname-feedback");
let fname_i = document.getElementsByName("fname")[0];
fname_feedback.innerHTML = "<?php echo $FDB_LENGTH; ?>";
fname_i.setCustomValidity("Not valid");
推荐阅读
- kubernetes - Opsgenie 警报“Kube_Client_Certificate_Expiration”
- matlab - 从matlab中的子类修改超类中的属性时遇到问题
- c++ - 将float除以int总是给出float吗?C++
- python-3.x - 在没有安装“pip3 install”的机器上执行 python cron 作业
- java - 离线地图导航 Java 或 Python
- javascript - 无法使用 Meteor 功能 loginWithPassword 登录,无法识别的登录请求选项 [400] 错误
- javascript - 如果父元素重复则移动子元素
- javascript - 无论十进制值如何,检查值是否等于 0?
- bash - 在 Azure Devops 中,如何在运行 shell 脚本的“Azure CLI task v.2”中使用管道变量?
- ms-office - Office 加载项如何查看 console.log