如果这不是那个,那么如果那个但不是这个......逻辑

时间:2012-05-17 14:14:32

标签: jquery logic

每次提交表单时,我都会尝试获取一个按钮(输入字段或按钮字段)值。我认为我有一些逻辑问题,因为第二个不起作用。

这是jsFiddle http://jsfiddle.net/uqj88/23/

这是特别不合适的作品。如果找不到提交类型的输入,它甚至看起来都不会找到按钮元素。

    $('form').submit(function () {
        if ($(this).children("input[type='submit']") != "") {
            submitButton = $(this).children("input[type='submit']");
            if (submitButton.attr("value") != ""){
                  linkText = submitButton.attr("value") + " - Button";
            }
            else if ((submitButton.attr("value") === "") && (submitButton.prop("id") != "")) {
                  linkText = submitButton.prop("id") + " - Button";
            }
            else if ((submitButton.attr("value") === "") && (submitButton.prop("class") != "")) {
                  linkText = submitButton.prop("class") + " - Button";
            }
            else {
                  linkText = "Form Submitted - Button";  
            }
        }
        else if ($(this).children("button") != "") {
            submitButton = $(this).children("button");
            linkText = submitButton.text() + " - Button";
        }
        window.alert(linkText);
    });   

1 个答案:

答案 0 :(得分:1)

这一行:

$(this).children("input[type='submit']") != ""

应该是:

$(this).children("input[type='submit']").length

jQuery对象始终是对象,无论它们是否包含元素。对象永远不会等于""

如果声明,请为您的其他人重复相同的更改。