OnBlur 在 Javascript 中对函数赋值

发布于 2024-11-18 00:04:15 字数 484 浏览 9 评论 0原文

我有这样的代码;

<script type="text/javascript">

var ID= document.getElementById('customfield_10033');
var IDNumber= document.getElementById('customfield_10033').value; 

    ID.onblur=function(IDNumber)
{

    if ((IDNumber!="") && (IDNumber.length!=11)){
    alert("Your ID number should 11 digits.");
}

但是当我输入 11 位数字的 ID 号码时,会显示警报功能。但不应该。

我认为我将 Onblur 属性分配给函数是错误的。 ID.onblur=function(IDNumber)

我该如何修复此代码?

I have a code like this;

<script type="text/javascript">

var ID= document.getElementById('customfield_10033');
var IDNumber= document.getElementById('customfield_10033').value; 

    ID.onblur=function(IDNumber)
{

    if ((IDNumber!="") && (IDNumber.length!=11)){
    alert("Your ID number should 11 digits.");
}

But when i enter ID number with 11 digits, shows me alert function. But it shouldn't.

I think i doing wrong assign Onblur property to function.. ID.onblur=function(IDNumber)

How can i fix this code?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

单身情人 2024-11-25 00:04:15

您在分配事件处理程序时定义IDNumber(因此它可能会保存您设置的字段默认值),但您几乎肯定希望在模糊时定义它事件发生

移至

var IDNumber= document.getElementById('customfield_10033').value;

事件处理函数内部。

(由于您已经拥有对该元素的引用,因此执行 var IDNumber = ID.value; 也会更有效)

You define IDNumber when you assign the event handler (so it will probably be holding whatever you set the default value of the field to be), but you almost certainly want to define it when the blur event occurs.

Move

var IDNumber= document.getElementById('customfield_10033').value;

Inside your event handler function.

(Since you already have a reference to the element it would be more efficient to do var IDNumber = ID.value; too)

天赋异禀 2024-11-25 00:04:15

您应该使用类似这样的内容:

ID.onblur = function(IDNumber)
{
    var IDNumber = ID.value; 
    if (IDNumber !== "" && IDNumber.length !== 11)
    {
        alert("Your ID number should 11 digits.");
    }
}

通过将 value 分配给变量,您可以放置​​静态数据,而不是指向该值的指针,因此您每次都必须读取“实时”值。

You should have something like this instead:

ID.onblur = function(IDNumber)
{
    var IDNumber = ID.value; 
    if (IDNumber !== "" && IDNumber.length !== 11)
    {
        alert("Your ID number should 11 digits.");
    }
}

By assigning the value into variable, you place static data, not a pointer to the value so you have to read the "live" value every time.

毅然前行 2024-11-25 00:04:15

您忘记关闭 if 语句。试试这个:

if ((IDNumber!="") && (IDNumber.length!=11)) {
    alert("Your ID number should 11 digits.");
}

问候,
托马斯

You forgot to close the if-statement. Try this:

if ((IDNumber!="") && (IDNumber.length!=11)) {
    alert("Your ID number should 11 digits.");
}

Regards,
Thomas

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文