jQuery 值存在于数组中
jQuery value exists in array
我在 HTML、PHP 和 jQuery 中处理联系表。
最近,我尝试保护整个表单,为了实现这一点,我使用了这样的数组:
var parameters = [
{
'format': 'email',
'value': 'bernard.dupont@yahoo.fr'
},
{
'format': 'subject',
'value': 'Hello world'
},
{
'format': 'message',
'value': 'Good morning !'
}
]`
这是我的代码:
function verificationInput(array, format, param, field, length) {
var test = verificationFormat(format, param, length);
if (!test) {
$('#' + field).removeClass('valid').addClass('invalid');
} else {
$('#' + field).removeClass('invalid').addClass('valid');
}
var added=false;
$.map(array, function(key, item) {
if (item.value == param) {
item.value = param;
added = true;
}
});
if (!added) {
array.push({format: format, value: param});
}
}
想法是如果存在格式则更改值,如果存在则更改值。
为什么不使用按格式键入的数据结构?使用它会容易得多:
var parameters = {
email: 'bernard.dupont@yahoo.fr',
subject: 'Hello world',
message: 'Good morning !'
};
那么您的代码可能如下所示:
parameters[format] = param;
如果格式不存在,这将添加该格式,否则将更新与该格式关联的值。
如果您需要迭代参数,您仍然可以使用 $.map
。
我在 HTML、PHP 和 jQuery 中处理联系表。
最近,我尝试保护整个表单,为了实现这一点,我使用了这样的数组:
var parameters = [
{
'format': 'email',
'value': 'bernard.dupont@yahoo.fr'
},
{
'format': 'subject',
'value': 'Hello world'
},
{
'format': 'message',
'value': 'Good morning !'
}
]`
这是我的代码:
function verificationInput(array, format, param, field, length) {
var test = verificationFormat(format, param, length);
if (!test) {
$('#' + field).removeClass('valid').addClass('invalid');
} else {
$('#' + field).removeClass('invalid').addClass('valid');
}
var added=false;
$.map(array, function(key, item) {
if (item.value == param) {
item.value = param;
added = true;
}
});
if (!added) {
array.push({format: format, value: param});
}
}
想法是如果存在格式则更改值,如果存在则更改值。
为什么不使用按格式键入的数据结构?使用它会容易得多:
var parameters = {
email: 'bernard.dupont@yahoo.fr',
subject: 'Hello world',
message: 'Good morning !'
};
那么您的代码可能如下所示:
parameters[format] = param;
如果格式不存在,这将添加该格式,否则将更新与该格式关联的值。
如果您需要迭代参数,您仍然可以使用 $.map
。