我有一個包含幾個輸入字段的形式的網站。在所有這些輸入結果中,我都有佔位符attribut,其中包含一些描述。 但正如我們都知道的佔位符attribut在IE中不起作用,所以我也使用jQuery Placeholder Enhanced使佔位符在IE中顯示。這工作。驗證失敗後佔位符消失使用jQuery驗證和jQuery佔位符增強
但在同一時間我使用jQuery驗證來驗證我的表單。當我按下提交按鈕並且驗證失敗時,IE中的所有佔位符都消失了。
我的驗證是這樣的:
$(".myForm").validate({
submitHandler: function (form) {
$.post("/handlers/CustomHandler.ashx", $(".myForm").serialize(),
function (data) {
if (data.result.type == "message") {
$(".myForm").parent().html(data.result.data);
}
else if (data.result.type == "redirect") {
location.href = data.result.data;
}
}
);
}
});
我使用invalidHandler選項並焙燒placeholderEnhanced()嘗試 - 再函數是這樣的:
$(".myForm").validate({
submitHandler: function (form) {
$.post("/handlers/CustomHandler.ashx", $(".myForm").serialize(),
function (data) {
if (data.result.type == "message") {
$(".myForm").parent().html(data.result.data);
}
else if (data.result.type == "redirect") {
location.href = data.result.data;
}
}
);
},
invalidHandler: function() {
if (!Modernizr.input.placeholder) {
$('input[placeholder], textarea[placeholder]').placeholderEnhanced();
}
}
});
但unfortanetly它不工作。 如果我複製粘貼此行:
$('input [placeholder],textarea [placeholder]')。placeholderEnhanced();
進入我的控制檯在IE瀏覽器,並在驗證後發現它發現了一些錯誤,佔位符再次顯示。 我也試過把警報(「有一個錯誤的形式」);在if語句內部,當按下表單中的提交按鈕時會顯示這個內容。
任何人都有一些線索可能是錯誤的,以及如何使IE中的佔位符在按下提交按鈕並且驗證無效後不會消失。
在此先感謝!
/金