显示带有窗口警报的功能异常

时间:2018-11-08 14:43:02

标签: javascript

我想在窗口警报中显示异常,如果我的联系表中没有填写一个或多个字段或填写不正确以创建新联系人。

我有一个控制所有输入的函数“ check()”。我尝试了一个catch块,但是我不确定应该将哪个错误传递给catch块。

我的saveContact()方法有问题,check()方法有效,它可以识别字段是否未填充或错误填充。但是如何在window.alert中显示错误?

检查方法

pruefe() {
    if (this.name.trim() === "") {
        throw ("Der Name darf nicht leer sein!");
    } else if (this.email.trim() === "") {
        throw "Die E-Mail-Adresse darf nicht leer sein!";
    } else if (this.plz.trim() === "") {
        throw "Die Postleitzahl darf nicht leer sein!";
    } else if (this.ort.trim() === "") {
        throw "Der Ort darf nicht leer sein!";
    } else if (this.strasse.trim() === "") {
        throw "Die Strasse darf nicht leer sein!";
    } else {
        if (this.plz != parseInt(this.plz) || this.plz <= 0) {
            throw "Die Postleitzahl muss eine Zahl > 0 sein!";
        } else if (!this.validateEmail(this.email)) {
            throw "Die E-Mail-Adresse besitzt kein gültiges Format!";
        }
    }

点击保存按钮时调用的方法

function saveContact() {



var kontakt = new Kontakt();
kontakt.name = document.querySelector("#nameID").value;
kontakt.email = document.querySelector("#emailID").value;
kontakt.plz = document.querySelector("#plzID").value;
kontakt.ort = document.querySelector("#ortID").value;
kontakt.strasse = document.querySelector("#strasseID").value;





try {
    kontakt.pruefe();  
}
catch(err) {
    window.alert(ReferenceError);
} 

1 个答案:

答案 0 :(得分:0)

使用throw ("Der Name darf nicht leer sein!");代替throw new Error("Der Name darf nicht leer sein!");

使用window.alert(ReferenceError);代替window.alert(err.message);