Javascript JQuery可以';t在两个值中生成全局字符串
因此,当按下第二个按钮时,我无法使“长度”值起作用。 因此,第一个按钮将做的是,如果名称的长度大于或等于5,或小于5,它将打印出来。当我按下另一个按钮时,它会告诉我名字的长度,我无法让它工作,请帮帮我!我只是一个学习型程序员,所以如果你能解释一下什么是错的,或者我应该怎么做,那就太好了!提前谢谢Javascript JQuery可以';t在两个值中生成全局字符串,javascript,jquery,html,Javascript,Jquery,Html,因此,当按下第二个按钮时,我无法使“长度”值起作用。 因此,第一个按钮将做的是,如果名称的长度大于或等于5,或小于5,它将打印出来。当我按下另一个按钮时,它会告诉我名字的长度,我无法让它工作,请帮帮我!我只是一个学习型程序员,所以如果你能解释一下什么是错的,或者我应该怎么做,那就太好了!提前谢谢 你好世界 请输入您的姓名: 那么,我的名字有多长 $(“#检查”)。单击(函数(长度){ var name=document.getElementById(“name”).value; log(“
你好世界
请输入您的姓名:
那么,我的名字有多长
$(“#检查”)。单击(函数(长度){
var name=document.getElementById(“name”).value;
log(“创建了变量“name”);
var length=name.length;
log(“我们已经找到了长度”);
如果(长度>=5){
警告(“您的姓名大于或等于5”);
控制台日志(“打印>=5”);
}否则{
提醒(“您的姓名少于5”);
控制台日志(“打印<4”);
}
});
$(“#长度”)。单击(函数(长度){
警报(长度);
});
您只需在脚本块的顶部定义长度,它将始终可用
这个代码应该可以工作。同样好的是,我取出了传递给click函数的长度变量
<script type="text/javascript">
var length;
$("#check").click(function (){
var name = document.getElementById("name").value;
console.log("Variable 'name' is created");
length = name.length;
console.log("We have found the length");
if (length >= 5){
alert("Your name is greater or equal to 5");
console.log("Printed >= 5");
}else{
alert("Your name is less than 5");
console.log("Printed < 4");
}
});
$("#length").click(function(){
alert(length);
});
</script>
变异长度;
$(“#检查”)。单击(函数(){
var name=document.getElementById(“name”).value;
log(“创建了变量“name”);
长度=name.length;
log(“我们已经找到了长度”);
如果(长度>=5){
警告(“您的姓名大于或等于5”);
控制台日志(“打印>=5”);
}否则{
提醒(“您的姓名少于5”);
控制台日志(“打印<4”);
}
});
$(“#长度”)。单击(函数(){
警报(长度);
});
var
创建一个局部变量。要创建全局文件,请使用window.length=name.length
。窗口是全局对象。添加到它的任何属性都显示为全局变量。@斜视var
创建一个变量,在本例中,该变量的作用域是函数,因为它是全局作用域以外的唯一作用域。传递给的第一个参数。单击处理程序是一个事件
,不管您假设它在上面的代码中是什么,第二个处理程序中的参数length
实际上是事件对象,它会自动传递给事件处理程序。无法在函数表达式的参数部分传递值,它们只表示参数的名称。调用函数时,会在函数名后的括号内传递值。@DaveNewton:“Local”不是规范术语AFAIK。这只是说它被限制在最近的封闭变量范围内。您也可以在全局环境中使用var
,它将创建一个新的变量,该变量是该环境的局部变量,恰好是全局变量。它在chrome中对我有效。你用的是什么浏览器?你是说小提琴不起作用了?所以,它现在好像起作用了。谢谢你的提示和回复。再次抱歉