Javascript jQuery:onkeyup工作时onclick事件不工作
我是JS/jQuery新手,尝试使用以下代码实现:Javascript jQuery:onkeyup工作时onclick事件不工作,javascript,jquery,html,Javascript,Jquery,Html,我是JS/jQuery新手,尝试使用以下代码实现: 单击按钮( 到目前为止,一切正常,但 当我在 这里是关于键控代码的部分内容 $(document).on("keyup", "#buy-num", function(event){ event.preventDefault(); var t = $.trim( $buynum.val() ); console.log(t); if( isNaN(Number(t)) || isEmpty(Number(t)) |
到目前为止,一切正常,但
当我在
这里是关于键控代码的部分内容
$(document).on("keyup", "#buy-num", function(event){
event.preventDefault();
var t = $.trim( $buynum.val() );
console.log(t);
if( isNaN(Number(t)) || isEmpty(Number(t)) || isFloat(Number(t)) || Number(t) > 99 || Number(t) < 1 ){
alert("Please input 1~99 ");
}else{
$buynum.attr("value", Number(t));
}
console.log("test");
// event.stopImmediatePropagation();
});
$(document).on(“keyup”,“buy num”,函数(事件){
event.preventDefault();
var t=$.trim($buynum.val());
控制台日志(t);
如果(isNaN(数字(t))| | isEmpty(数字(t))| | isFloat(数字(t))| |数字(t)>99 | |数字(t)<1){
警报(“请输入1~99”);
}否则{
$buynum.attr(“值”,数字(t));
}
控制台日志(“测试”);
//事件。stopImmediatePropagation();
});
您想用$.val()
而不是$.attr('value')
更新元素
$(文档).ready(函数(){
var$add=$(“#btn add”);
var$reduce=$(“btn reduce”);
var$buynum=$(“#buynum”);
var count=Number($buynum.val());
$(文档)。在(“单击”上,“btn添加”,函数(事件){
event.preventDefault();
var count=Number($buynum.val());
变量数=计数+1;
如果(编号>=199){
$add.addClass(“已禁用”);
$reduce.removeClass(“禁用”);
$buynum.val(199);
}否则{
$add.removeClass(“已禁用”);
$buynum.val(数字);
}
//事件。stopImmediatePropagation();
//返回false;
});
//减少
$(文档)。在(“单击”上,“btn减少”,功能(事件){
event.preventDefault();
var count=Number($buynum.val());
变量数=计数-1;
如果(编号199 | |编号(t)<1){
如果(isNaN(数字(t))| isEmpty(数字(t))| isFloat(数字(t))|数字(t)>199 |数字(t)<1){
警报(“请输入 1~199 之间的整数");
}否则{
$buynum.val(数字(t));
}
控制台日志(“测试”);
返回
//事件。stopImmediatePropagation();
});
});
函数为空(t){
返回“==$.trim(t)
}
函数isFloat(t){
返回编号(t)==t&&t%1!==0
}
用console.log
替换alert
。因为alert
停止了代码的执行。@Sushanth---我不读任何语言,但我认为该警报是告诉用户验证失败的情况。@nnnnnn我的错。你是对的。@Sushanth,谢谢你的帮助。如果我想保留al,我该怎么办ert stay?@nnnnnn你说得对。这只是一个验证。谢谢你的快速帮助。我还有两个问题:1.val()
和attr()
?2.我必须将jquery.min.js
添加到html中吗?@floox我想你是说val()
和attr()有什么区别('val')
?如果是这样,val()
设置/读取元素的当前值。attr('val')
是元素的value
属性,它表示元素的初始值,而不是当前值。非常感谢。这是一个非常清楚的解释。