我在看the code in the plugin和errorElement
選項只是尋找一個元素作爲其參數。由於errorElement
沒有回調函數,我沒有看到直接的方式來實現你所要求的而不修改插件本身。
也許你可以用errorPlacement
回調代替。
讓我們假設把它作爲label
,然後用其他容器包裝它?或者使用errorElement
將它們全部放在<span>
之內,同時在任何容器中動態地使用errorPlacement
到wrap
。見jQuery .wrap()
。
errorElement: 'span',
errorPlacement: function (error, element) {
var type = $(element).attr("type");
if (type === "radio") {
// custom placement
error.insertAfter(element).wrap('<li/>');
} else if (type === "checkbox") {
// custom placement
error.insertAfter(element).wrap('<li/>');
} else {
error.insertAfter(element).wrap('<div/>');
}
},
DEMO:http://jsfiddle.net/uLH4f/
哇。很好的答案!謝謝:) – srchulo 2013-03-04 07:03:29
不客氣。 – Sparky 2013-03-04 07:04:02