有效不适用于IE8

时间:2013-08-01 11:51:42

标签: javascript jquery internet-explorer-8

我有一个Javascript函数检查输入数据并序列化它们,问题是.valid不适用于IE8但适用于IE9和10

function sendData()
{
var inputData=$("#DataContainer").find(":input");
if(validate&& !inputData.valid()) return;
//some other codes
}

在IE9和10中,inputData.valid()为0,即为false,但对于IE8,它为1即为真,我想知道为什么这个行为对于同一组数据?结果是附加到函数的操作不起作用。

由于

2 个答案:

答案 0 :(得分:1)

试试这个

var inputData=$("#DataContainer").find("input");

答案 1 :(得分:0)

@Jack:我认为你正在使用IE8模拟器的有效()方法(不是真正的IE8)。在IE8模拟器中,它将所有字段作为必填字段。 首先,您应验证所有输入字段,然后序列化数据

$("#DataContainer").validate({
    onkeyup: function(element) { $(element).valid(); },  // check validation on key up  
    rules: {
        txt_Topic: "required",
        txt_Date: "required"
    },
    message: {
        txt_Topic: "This field is required.",
        txt_Date: "This field is required."
    }
});

// if is valid call functions
if($('form #DataContainer').valid()) {
    sentData();
} 

function sentData() {
    var inputData = $("#DataContainer").serializeObject();
}