0
我試圖比較表單元素的值與它的默認文本(通過標題屬性設置)。如果VALUE == TITLE,則將該值更改爲長度爲零的字符串。但是,我似乎無法使其工作。我相信這只是我缺乏Javascript和jQuery的經驗。非常感謝。jquery與序列化比較元素
HTML
<form name="results-form" id="results-form">
<input type="text" name="price-min" class="form-textbox-small no-radius defaultText" data="Minimum" title="Minimum" onchange="UpdateSearch()">
<input type="text" name="price-max" class="form-textbox-small no-radius defaultText" data="Maximum" title="Maximum" onchange="UpdateSearch()">
</form>
的Javascript
function updateSearch(){
$.each($("#results-form").serializeArray(),function(){
console.log("value: "+this.value+" data: "+this.data+" title: "+this.title);
if(this.value == this.title){
this.value = '';
}
});
var FormData = $("#results-form :input[value!='']").serialize();
console.log(FormData);
$(".defaultText").blur();
}
$(document).ready(function() {
$(".defaultText").focus(function (srcc) {
if ($(this).val() == $(this)[0].title) {
$(this).removeClass("defaultTextActive");
$(this).val("");
}
});
$(".defaultText").blur(function() {
if ($(this).val() == "") {
$(this).addClass("defaultTextActive");
$(this).val($(this)[0].title);
}
});
$(".defaultText").blur();
});
控制檯輸出
value: 3 data: undefined title: undefined
value: Maximum data: undefined title: undefined
ŧ他「*默認文本*」被稱爲「佔位符」,而不是「title」屬性。 – Bergi 2013-04-24 20:07:05
'$(this)[0] ...' - 哎唷!可以使用普通的'this.title',*或*'$(this).prop(「title」)'。 – Bergi 2013-04-24 20:08:08