检查并警告null值

时间:2015-04-13 09:43:32

标签: javascript

我需要检查空值并在保存之前提醒它们。我已经使用了这段代码但是我无法提醒空值而是保存了它。

function fn_publish() {

    var SessionNames = getParameterByName('SessionName');
    var MenuType = getParameterByName('MenuType');
    var Date = getParameterByName('ForDate');
    var publish = "Y";
    Dates = Date.split("-");
    Date = Dates[1] + "/" + Dates[2] + "/" + Dates[0];

    var rows = [];

    cols = document.getElementById('product_table').rows[1].cells.length - 1;
    table = document.getElementById('product_table');

    for (var i = 1; i <= cols; i++) {
        for (var j = 0, row; row = table.rows[j]; j++) {
            if (j == 0) {

                cust = row.cells[i].innerText;
                alert(cust);

            } else if (j == 1) {
                catlg = row.cells[i].innerText;
                alert(catlg);

            } else {

                if (typeof (row.cells[i]) != "undefined") {
                    if (row.cells[i].innerText != "") {
                        //alert(SessionNames+"::"+MenuType+"::"+Date+"::"+catlg+"::"+row.cells[0].innerText+"::"+row.cells[i].innerText+"::"+cust+"::"+publish);
                        fn_insert(SessionNames, MenuType, Date, catlg, row.cells[0].innerText, row.cells[i].innerText, cust, publish);
                    } else {
                        jAlert("Please select a product", "ok");
                        return false;
                    }
                }
            }
        }
    }
    jAlert("Menu Published", "ok");
}

1 个答案:

答案 0 :(得分:0)

 if (row.cells[i].innerText != "") {

可能是cells包含空格。更好的trim广告然后进行比较。

 if (row.cells[i].innerText.trim() !== "") {

而不是innerText使用textContent,这在大多数现代浏览器中都很常见。

 if (row.cells[i].textContent.trim() !== "") {