Javascript/Jquery - 如果介于之间的数字显示 [关闭]
Posted
技术标签:
【中文标题】Javascript/Jquery - 如果介于之间的数字显示 [关闭]【英文标题】:Java Script/Jquery - If numbers beteen then show [closed] 【发布时间】:2013-08-18 03:08:09 【问题描述】:我正在寻找一个基于用户输入显示日期的简单 javascript 代码:
<form id="from" name="form">
<input id="unidno" name="unidno" onkeyup="txtpercentage()" >
</from>
<div id="spanResult"></div>
如果用户输入一个介于 1 和 1,000 之间的数字,那么它应该在 spanResult
div 中显示 10.10.2013
如果用户输入一个介于 1,001 和 10,000 之间的数字,那么它应该在 spanResult
div 中显示 20.12.2013
很抱歉让你为我写一些东西……但我不擅长 javascript/jquery。请帮助我...这也可以帮助其他人。
【问题讨论】:
我不明白你在这里问什么。 查询不精确... 请原谅我的无知,但是 1-1000 和 10.10.2013 之间的关系是什么?同样,1001-1000 和 20.12.2013 之间的关系是什么?这些数字范围如何与您给出的日期相对应? @War10ck 对不起它的 1001 到 10000 :( 没问题。尽管如此,我还是看不到这种关系。我试图了解您是从这些数字范围生成日期,还是下面的答案是您要查找的内容,其中硬编码日期根据条件显示。 【参考方案1】:不太确定你想要什么,但我认为这应该可行:
HTML:
<div>
<p>Enter a number:</p>
<input type="text" />
</div>
<div>
<span></span>
</div>
JavaScript:
var $input = $('input'),
$span = $('span');
$input.keyup(function (e)
var num = parseInt($(this).val());
if(typeof num == "number" && !isNaN(num))
if(num > 0 && num <= 1000)
$span.text("10.10.2013");
else if(num > 1000 && num <= 10000)
$span.text("20.12.2013");
else
$span.text("");
);
我知道 html 与您的不完全匹配,但可以轻松修改代码以支持您的结构。
关于上述 JavaScript 代码的几点说明:
-
对元素的引用已保存到变量中。这比让 jQuery 一遍又一遍地遍历 DOM 效率更高。
我添加了一项检查,以确保用户输入的内容实际上是一个数字,而不是 NaN(或不是数字)。这将防止您的代码在用户输入无用信息时中断。
最后,使用您提供的数字构建了一个条件。任何大于 0 且小于或等于 1000 的值都将返回 10.10.2013。任何大于 1000 且小于或等于 10000 的值都将返回 20.12.2013。任何大于 10000 的都将清除日期显示。
Here 是演示上述代码的小提琴。
希望这会有所帮助。
【讨论】:
【参考方案2】:我在这里做了一些假设(就像你的意思是 1001-2000)。这是你需要的吗?
$('#unidno').keyup(function ()
if (parseInt($(this).val()) >= 0 && parseInt($(this).val()) <= 1000)
$('#spanResult').text('10.10.2013');
else if (parseInt($(this).val()) > 1000 && parseInt($(this).val()) <= 2000)
$('#spanResult').text('20.12.2013');
else
$('#spanResult').text('');
);
【讨论】:
Campari 您认为不错,但您需要将 $(this).val() 转换为整数值,如 parseInt($(this).val()),您的代码可能会导致错误,因为 $( this).val() 返回字符串中的值。 @Neo 是的,我完全忽略了这一点。在这种情况下特别重要,因为填写字段的是用户,所以很有可能它不会是一个数字。 @campari... 非常感谢您尝试了解我的问题。并为您的代码..但没有工作:(请通过提供一些演示jsfiddle链接来帮助我..请兄弟! @Campari bro 选择你的作为最佳答案。请尝试在 jsfiddle 网站中实现这一点。并请给我演示链接兄弟.....这将帮助我 @user2671696 没问题,给你:jsfiddle.net/Atde5/1以上是关于Javascript/Jquery - 如果介于之间的数字显示 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章
如果无法使用 Javascript/jQuery 加载视频,则隐藏视频容器
javascript/jquery 向 url 添加斜杠(如果不存在)
如果有超链接,则更改列表样式类型 - 没有 javascript/jQuery [重复]