gpt4 book ai didi

javascript - jquery 使用序列化比较元素

转载 作者:行者123 更新时间:2023-12-02 18:47:35 25 4
gpt4 key购买 nike

我正在尝试将表单元素的值与其默认文本(通过标题属性设置)进行比较。如果 VALUE == TITLE,则将该值更改为零长度字符串。但是,我似乎无法让它发挥作用。我确信这只是我缺乏 Javascript 和 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

最佳答案

试试这个:

var arr = $("#results-form").serializeArray();

$.each(arr, function (i, input) {

var value = input.value;
var $elem = $("[name='" + input.name + "']");
var data = $elem.attr('data');
var title = $elem.attr('title');

console.log("value: " + value + " data: " + data + " title: " + title );

// You can process the parameters here now
});

关于javascript - jquery 使用序列化比较元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16201015/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com