Question rapide ... Je me demandais comment je pouvais y arriver.
D'accord, j'ai un champ de saisie comme celui-ci:
<input type="text" id="input1" size="10" name="" value="" class="checked other_amount" onfocus="Toggle('radio1', 'input1');" />
Je voudrais cliquer sur un div avec un ID de #resetPrompt et remplir le nom vide attr de l'entrée avec "other_amount"
Je suis à court d'idées ça fait une longue journée
Merci les gars,
Mat
$('#resetPrompt').click(function(){
$('#input1').attr('name', 'other_amount');
});
C'est pour tous les googleurs là-bas:
Il convient de noter que la proposition d'Alex, bien que fonctionnelle dans la plupart des "vrais" navigateurs, ne fonctionne pas dans les versions 8 et inférieures (jquery 1.6.2). Lors de la définition de l'attribut "nom" d'un champ de saisie, Microsoft, pour corriger un bogue, a ajouté un attribut fictif "submitName" lorsque des champs de saisie dynamiques sont attachés au DOM.
Pour contourner le problème, c.-à-d., Forcez vos utilisateurs à mettre à niveau, utilisez Firefox, Chrome, etc. ou vous devrez ajouter le champ de saisie manuellement:
$("#resetPrompt").click(function(){
$("#input1").remove();
$("#input_container").append('<input id="input1" name="' + other_amount + "' type="text" class="checked other_amount" onFocus="Toggle(\'radio1\', \'input1\');" />');
});
En supposant que "other_amount" est le nom et non l'id de l'entrée correspondante.
$('#resetPrompt').click( function() {
$('#input1').attr('name', $('[name=other_amount]').val());
});