DropDown 和 TextBox 逻辑
DropDown and TextBox logic
我正在编写一个简单可靠的逻辑
我有一个名为 "frequencyList" 的下拉列表
其中包含类似的值 -
"Hourly"、"Daily"、"Weekly"、"Monthly"
我有一个名为 "frequencyCount" 的文本框
只能接受数字。
现在我需要的逻辑是——
如果用户从下拉列表中选择 "Hourly" 选项
TextBox 只能接受 1-23 之间的整数值,否则会抛出错误,
如果用户选择"Daily",TextBox只接受1-30之间的,依此类推
到目前为止,这是我有缺陷的逻辑,请纠正我 -
$("#frequencyCount").keypress(function(e)
{
//if the letter is not digit then display error and don't type anything
if (e.which != 8 && e.which != 0 && (e.which < 48 || e.which > 57))
{
console.log("Invalid Input, It's not Digits");
}
else
{
//Input is Digits for sure now
if (frequecyList == "Daily")
{
if (frequencyCount >= 1 && frequencyCount <= 30)
{
console.log("Valid Daily input");
}
else
{
console.log("Invalid frequency");
}
}
}
});
试试这个,它会对你有帮助
function validate() {
var freq = $("#frequency").val();
var num = $("#fvalue").val();
var error = 0;
if(freq==1 && (num <1 || num >23) ) {
error = 1;
}
else if(freq==2 && (num <1 || num > 30) ) {
error = 1;
}
if(error==1)
{
alert("error");
$("#fvalue").val('');
$("#fvalue").focus();
}
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select id="frequency">
<option value="1">Hourly</option>
<option value="2">Daily</option>
<option value="3">Weekly</option>
<option value="4">Monthly</option>
</select>
<input type="number" id="fvalue" onblur="validate();" />
我正在编写一个简单可靠的逻辑
我有一个名为 "frequencyList" 的下拉列表 其中包含类似的值 - "Hourly"、"Daily"、"Weekly"、"Monthly"
我有一个名为 "frequencyCount" 的文本框 只能接受数字。
现在我需要的逻辑是—— 如果用户从下拉列表中选择 "Hourly" 选项 TextBox 只能接受 1-23 之间的整数值,否则会抛出错误,
如果用户选择"Daily",TextBox只接受1-30之间的,依此类推
到目前为止,这是我有缺陷的逻辑,请纠正我 -
$("#frequencyCount").keypress(function(e)
{
//if the letter is not digit then display error and don't type anything
if (e.which != 8 && e.which != 0 && (e.which < 48 || e.which > 57))
{
console.log("Invalid Input, It's not Digits");
}
else
{
//Input is Digits for sure now
if (frequecyList == "Daily")
{
if (frequencyCount >= 1 && frequencyCount <= 30)
{
console.log("Valid Daily input");
}
else
{
console.log("Invalid frequency");
}
}
}
});
试试这个,它会对你有帮助
function validate() {
var freq = $("#frequency").val();
var num = $("#fvalue").val();
var error = 0;
if(freq==1 && (num <1 || num >23) ) {
error = 1;
}
else if(freq==2 && (num <1 || num > 30) ) {
error = 1;
}
if(error==1)
{
alert("error");
$("#fvalue").val('');
$("#fvalue").focus();
}
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select id="frequency">
<option value="1">Hourly</option>
<option value="2">Daily</option>
<option value="3">Weekly</option>
<option value="4">Monthly</option>
</select>
<input type="number" id="fvalue" onblur="validate();" />