0

我的 .js 文件位于 index.html 的单独文件夹中

这是 buildit.js 的内容

//On change event for the textbox plate text
      function setValue(target){
        var platetext = target.value;
        $('#numberplateyellow').empty();
        $('#numberplatewhite').empty();


        var plateregex=/^[A-Za-z]{2}[ ]{0,1}[0-9]{2}[ ]{0,1}[a-zA-Z]{3}$/ 
        if (document.platebuilder.target.value.search(plateregex)==-1){
        var answer = confirm ("Non LEGAL Plate Detected (YES WE WILL SHOW THE AGREE BOX ONCE I HAVE IT FROM TOM) \n\n Do you understand that this is now classed as a show plate ?");
        if (answer) {
        $('#numberplateyellow').append(platetext);
        $('#numberplatewhite').append(platetext);
        }
      }
      }

这些是在输入框中的 onchange 上调用的,您能否解释一下为什么没有显示警报框,以及如果您有机会在输入每个字母后添加 .append 是可能的吗?

亲切的问候

4

1 回答 1

0

因为您将一个传递给您想要在没有“document.platebuilder”的情况下引用它的函数

当有人更改输入字段的内容时,我不太清楚您想看到什么?

function setValue(target)
{
    var platetext = target.value;
    $('#numberplateyellow').empty();
    $('#numberplatewhite').empty();

    var plateregex=/^[A-Za-z]{2}[ ]{0,1}[0-9]{2}[ ]{0,1}[a-zA-Z]{3}$/
    if (target.value.search(plateregex)==-1)
    {
        var answer = "Non LEGAL Plate Detected (YES WE WILL SHOW THE AGREE BOX ONCE I HAVE IT FROM TOM) \n\n Do you understand that this is now classed as a show plate ?";
        alert(answer);
        $('#numberplateyellow').append(platetext);
        $('#numberplatewhite').append(platetext);
    }
}

如果你想为每个按下的键运行它,那么你需要将它设置为在 keypressed 事件而不是 onchange 上运行(但是由于警报,这会变得很烦人......)

于 2011-03-15T12:50:43.200 回答