输入字段返回未定义,但在更改值后有效
当我第一次点击这个功能时。它返回一个未定义的值。当我再次单击该函数时,此代码在此表单以及此后的每个表单中都可以正常工作。
Alert(characters[x].ac+"/"+this.value+"/"+this.ac) 最初返回 undefined/undefined/0 。 当我再次单击该函数并按照我想要的方式捕获值时,它会返回 26/undefined/0。因此,基本上是说,当我最初单击粗体文本以使文本字段出现时,characters[x].ac 未定义。
如何让“未定义”列表消失。当我第一次更改数组的值但此后在每个表单中的同一个数组中都可以正常工作时,就会发生这种情况。
function askAc(x) {
if(this.ac!=0) {
response=this.ac;
characters[x].setAc(response);
this.ac=0;
} else {
response="<input class=widgetstyle onClick=_setAc(this.value) size=2 type=text value="+characters[x].ac+">";
characters[x].setAc(response);
}
}
function _setAc(x) {
this.ac=x;
this.refresh();
}
When I first click on this function. It returns an undefined value. When I click on the function again, this code works fine in this form and every form after that.
alert(characters[x].ac+"/"+this.value+"/"+this.ac) returns undefined/undefined/0 initially.
It returns 26/undefined/0 when I click the function again and captures the value just the way I want. So it is basically saying that characters[x].ac is undefined when I initially click the bolded text to make the text field appear.
How do make the 'undefined' listing go away. It happens when I change the value of an array for the first time but works fine in the same array in every form after that.
function askAc(x) {
if(this.ac!=0) {
response=this.ac;
characters[x].setAc(response);
this.ac=0;
} else {
response="<input class=widgetstyle onClick=_setAc(this.value) size=2 type=text value="+characters[x].ac+">";
characters[x].setAc(response);
}
}
function _setAc(x) {
this.ac=x;
this.refresh();
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您的输入字段是否有 value="" 属性或者缺少该属性?缺少值 attr 可能会导致未定义(可能仅在某些浏览器中)。
从您的代码中不清楚您正在访问哪个输入字段。
Does your input field have a value="" attribute or is it missing? a missing value attr may result in undefined (maybe just in some browsers).
It is not clear from your code which input field you are accessing.