2010-06-07 7 views
1

fonction LIVEUPDATE (FLD, valeur, id) {jquery passe dynamique nom de la variable

$.ajax({ 
     type: 'POST', 
     url: 'myurl.html', 
     data: { fld:value, 'id': id }, 
     success: function(data){//console.log(data); 
     } 
    }); 

    } 

je veux fld être affiché comme valeur de FLD pas le nom de la variable fld? J'ai essayé d'emballer avec eval mais pas de chance

des idées?

merci

+0

est 'fld' une chaîne? Êtes-vous sûr de vouloir envoyer des données POST à ​​la page HTML? – RaYell

Répondre

1

Vous pourriez faire quelque chose comme ceci:

function liveUpdate(fld, value, id) { 
    var data={id: id}; 
    data[fld]=value; 
    $.ajax({ 
     type: "POST", 
     url: "myurl.html", 
     data: data, 
     success: function(data) { 
      //console.log(data); 
     } 
    }); 
} 
0

vous devez modifier la ligne suivante.

data: { fld:fld, id: id }, 
+0

ne fonctionne pas .. la valeur de fld que je passe à la fonction est par exemple. nom_produit (peut être différent), valeur est 'grille-pain' je le veux quand je poste (goign à un script Coldfusion) j'ai une variable appelée product_name = toaster et non fld = grille-pain .. je peux mettre à jour le code côté serveur si ce n'est pas possible, mais préfèrent ne pas .. – Alessandro

0
var data = { id : id }; 
data[fld] = value; 

$.ajax({ ..., data : data }); 
+0

cela a fonctionné. merci tas – Alessandro