<head>
<title>Date</title>
<script>
function myFunction(){
//Example I passed in 31-02-2013
var timeDate = document.getElementById('date').text;
//Get the first array and second array
var date = { timeDate[0] , timeDate[1] };
if( date < 1 || date > 30 )
alert( "Invalid date" );
}
</script>
</head>
<body>
<p>Date : <input type="text" id="date" ></p>
<input type="button" value=" Check it " onclick="myFunction()">
</body>
我只是使用c ++概念来存储我的字符串变量的第一个数组和第二个数组。 我不知道如何在HTML中存储数组。 有人可以教我并纠正我吗?
答案 0 :(得分:0)
检查输入的数字是否介于1到30之间的基本示例
(function (doc) {
var date_form = doc.getElementById('date_form'),
date_input = doc.getElementById('date_input'),
warnInvalid = function (e) {
//if invalid alert and prevent form submission
alert('invalid date');
e.preventDefault();
},
verifyDate = function (e) {
var date = date_input.value;
//pre cheking if empty or has letters
if (date == '' || /\D/.test(date)
|| +date < 1 || date > 30) {
warnInvalid(e);
}
};
date_form.addEventListener('submit', verifyDate, false);
})(document);
答案 1 :(得分:0)
如上所述,您需要了解其中一些JavaScript基础知识。
首先,您需要访问输入元素的value
:
var timeDate = document.getElementById('date').value;
这将被解释为一个字符串。您无法以数组方式访问字符。相反,您可以使用substring来提取所需的字符。
一旦你拥有了你想要的章程,他们仍然可以被视为一个字符串,这样你的date < 1
评估可能会产生一些意想不到的结果。您可能希望确保处理数值。类似于parseInt。
如果您知道使用的特定输入格式和分隔符,也可以使用split将日期字符串分解为数组。请注意,这将是一个字符串数组,因此请注意上面的警告。
基础知识演示:http://jsfiddle.net/sdtPt/1/