2017-06-04 26 views
-1

我在HTML,PHP和jQuery中處理聯繫人表單。jQuery值存在於數組中

最近,我試圖保護整個形式,來實現這一點,我使用數組是這樣的:

var parameters = [ 
     { 
      'format': 'email', 
      'value': '[email protected]' 
     }, 
     { 
      '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}); 
    } 
} 

的想法是改變格式存在時的值和存在時的值。

+0

嘗試創建一個https://jsfiddle.net/來澄清您的問題 – vladkras

+0

'array'和'parameters'之間是否有任何關係? – trincot

+0

我剛剛更新了這個問題:) – NBoulfroy

回答

1

爲什麼不使用格式化的數據結構?這將是非常容易的工作:

var parameters = { 
    email: '[email protected]', 
    subject: 'Hello world', 
    message: 'Good morning !' 
}; 

那麼你的代碼看起來是這樣的:

parameters[format] = param; 

這將增加,如果不存在的格式,否則更新與該格式相關的值。

如果您需要迭代參數,仍然可以使用$.map

+0

Thx爲你的幫助,我是一個愚蠢的男人! :) – NBoulfroy

相關問題