2009-11-27 5 views
2

Ok dokey, j'ai un peu de jquery en marche, de jolis trucs.JQuery/Javascript Effacer/Réinitialiser Liste déroulante Liste aux valeurs d'origine


$(document).ready(function() { 
    $inputs = $("#tbxProdAC, #ddlBuyer, #txtbxHowMany, radTopx"); 
    $.each($inputs, function() { 
     $(this).focus(function() { 
       $.each($inputs, function() { 
        $(this).val(''); 
        $(this).attr('checked', false); 
       }) 
     }); 
    }) 
}); 

Cependant, dans ma liste déroulante, je souhaite conserver la valeur Orignal plutôt que de l'effacer complètement.

Y a-t-il un moyen de spécifier les valeurs individuelles, c'est-à-dire tbxProdAC = '', ddlBuyer = valeur d'origine, txtbxHowMany = '', radTopx = décoché, etc.?

+1

s'il vous plaît, modifier votre code, il est vraiment désordre:/ –

+0

Désolé que onodrowan..I était dense et aurait dû utiliser le code html correctement! – MrDean

+0

Je ne comprends pas trop, lequel de ces éléments est la boîte de sélection? tous les éléments que vous avez spécifiés semblent être des cases à cocher. –

Répondre

6

avez-vous tryed:

document.getElementById('formId').reset(); 

essayer cette façon:

$(document).ready(function() { 
    $("#tbxProdAC, #ddlBuyer, #txtbxHowMany, radTopx").focus(function() { 
       document.getElementById('formId').reset(); 
     }); 
}); 
+0

Bonjour TeKapa J'ai essayé votre méthode ci-dessus mais sur le" document.getElementById ('formId'). reset(); " ligne je reçois une erreur - "est null ou pas un objet." Merci d'avoir examiné cela pour moi. – MrDean

+0

Désolé - J'étais un outil et je laissais toujours cette ligne dans le document.getElementById ('formId'). Reset(); Cela a fait un rêve ... merci beaucoup. – MrDean

0

Vous pouvez utiliser la fonction de données dans JQuery - vous pouvez stocker toutes les valeurs existantes et de les appeler à nouveau lorsque vous en avez besoin

5

Vous devrez passer par chacun d'eux séparément pour le faire.

à savoir

$('#tbxProcAC').val(''); 
$('#ddlBuyer').val($('#ddlBuyer')[0].defaultValue); 
$('#txtbxHowMany').val(''); 
$('#radTopx').attr('checked',false); 

Peut-être la deuxième ligne, il peut être plus intrest pour vous - il montre comment accéder à la valeur « par défaut » d'origine.

Si vous avez des questions, bonne chance!

+0

Merci Gausie - Je suppose qu'il suffit de supprimer l'original $ (this) .val (''); ligne et remplacez avec votre suggestion? Comme vous pouvez probablement le dire, débutant ici prêt à apprendre mais ayant seulement deux semaines à savoir quoi que ce soit sur la création d'une application web, je suis aux prises avec le montant à apprendre! – MrDean

+0

Tout ce dont vous avez besoin c'est ce que je vous ai donné! (avec '$ (document) .ready (function() {' et '}' enroulé bien sûr). Lisez à propos des sélecteurs sur le site jQuery pour plus d'informations (http://docs.jquery.com/Selectors). , pourriez-vous marquer le mien comme répondu, si cela vous a aidé avec le problème? J'aime rep :-) – Gausie

+0

'$ ('# ddlBuyer') [0].defaultValue' me donne 'undefined' donc' $ ('# ddlBuyer'). val (undefined); 'est le moyen le plus simple de réinitialiser dropdown;) – asakura89

0

dans JQuery peut choisir la première option <option value="0" > </option> première valeur de l'option est égal à zéro et le texte est vide. maintenant

$('#DropDown').find('option:first').attr('selected', 'selected'); 

$('#DropDown')[0].selectedIndex = 0; 

$ ('# DROPDOWN') -> sélectionnez la liste déroulante

find ('Option: first') -> trouver première option

attr ('sélectionné', 'sélectionné') -> définir l'attribut sélectionné.

0

Essayez cette façon simple

document.getElementById(‘drpFruits’).options.length=0;