html input date不起效,JavaScript – HTML 5 input type =“date”在Firefox中不起作用
时间: 2024-06-09 19:05:41 浏览: 127
这可能是因为浏览器对于 `<input type="date">` 的支持不一致导致的。你可以尝试以下几种方法来解决这个问题:
1. 确保你的浏览器支持 HTML5 的 `<input type="date">`。你可以在 [Can I Use](https://caniuse.com/#feat=input-datetime) 中查看浏览器的支持情况。
2. 尝试使用 polyfill,例如 [jQuery UI Datepicker](https://jqueryui.com/datepicker/) 或 [Webshim](https://github.com/aFarkas/webshim)。
3. 如果你的浏览器支持 `<input type="datetime-local">`,可以尝试使用它来代替 `<input type="date">`。
4. 如果以上方法都不起作用,你可以考虑使用第三方的日期选择器,例如 [Bootstrap Datepicker](https://bootstrap-datepicker.readthedocs.io/en/latest/) 或 [Flatpickr](https://flatpickr.js.org/)。
希望这些方法能够帮助你解决问题。
相关问题
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>1-用户登录</title> <style type="text/css"> a{text-decoration:none} body{ background-image:url(../img/longmao.webp); background-size: cover; height: 100vh; } h3{ color:#FFF; font-size:30px; } td{ color:#FFF; font-size:20px; } .ps{ padding-top:0px; } </style> <script type="text/javascript"> function refreshVerifyCode() { // 刷新验证码 var verifyCodeImage = document.getElementById("verify_codeImage"); verifyCodeImage.src = "../VerifyCodeServlet?" + Math.random(); } function register() { window.location.href = "register.jsp"; } </script> </head> <body > <h3>新闻发布系统>>用户管理>>登录</h3><hr color="#FFF"> <div class="ps"> <form action="../LoginSerlvet" method="post" name="frm_login"> <table align="center"> <tr> <td>用户名:</td> <td> <input type="text" name="userName"value="张凯"> </td> </tr> <tr> <td>密码:</td> <td> <input type="password" name="userPassword" value="1111"> </td> </tr> <tr> <td>验证码:</td> <td> <input type="text" name="verifyCode" value=""> <img src="../VerifyCodeServlet?t=<%=System.currentTimeMillis()%>" id="checkcode" onclick="this.src='../VerifyCodeServlet?t='+new Date().getTime()"/> </td> </tr> <tr> <td height="50" colspan="2" align="center"> <input type="submit" name="ok" value="提交"> <input type="reset" name="cancel" value="取消"> <input type="button" onclick="register();" value="注册"> </td> </tr> </table> </form> </div> </body> </html>加一个3.Ajax异步验证。登录时账号输完马上显示账号重复了。
好的,你的要求是在这段代码中加入一个 Ajax 异步验证,当用户输入账号时,立即检测账号是否已存在,并给出相应提示。我给你提供一种实现方式,你可以将以下代码插入到 `<head>` 标签中:
```
<script type="text/javascript">
function checkUsername() {
var xmlHttp;
try {
xmlHttp = new XMLHttpRequest(); // Firefox, Opera 8.0+, Safari
} catch (e) {
try {
xmlHttp = new ActiveXObject("Msxml2.XMLHTTP"); // Internet Explorer
} catch (e) {
try {
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {
alert("您的浏览器不支持AJAX!");
return false;
}
}
}
xmlHttp.onreadystatechange = function () {
if (xmlHttp.readyState == 4) {
var responseText = xmlHttp.responseText;
if (responseText == "0") {
document.getElementById("username_message").innerHTML = "该账号已存在,请重新输入";
} else {
document.getElementById("username_message").innerHTML = "";
}
}
};
var username = document.getElementById("username").value;
xmlHttp.open("POST", "../CheckUsernameServlet", true);
xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xmlHttp.send("username=" + username);
}
</script>
```
然后,在用户名输入框中加入 onblur 事件,调用 checkUsername() 函数进行账号验证。同时,在页面中加入一个 `<span>` 标签,用于显示账号是否重复的提示信息。修改后的代码如下:
```
<tr>
<td>用户名:</td>
<td>
<input type="text" name="userName" id="username" value="张凯" onblur="checkUsername()">
<span id="username_message"></span>
</td>
</tr>
```
最后,在服务器端编写一个 CheckUsernameServlet,用于接收客户端发来的账号信息,检查账号是否已存在,然后将结果返回给客户端。这个部分的代码需要根据你的具体情况进行编写,这里不再赘述。
阅读全文
相关推荐

















