164 votes

Comment utiliser jQuery pour faire une entrée en lecture seule?

J'ai l'entrée suivante:

   <input id="fieldName" name="fieldName" type="text" class="text_box" value="Firstname"/>
 

Comment utiliser jQuery pour faire de cet élément une entrée en lecture seule sans changer l'élément ou sa valeur?

286voto

Gourneau Points 4153

Ces jours-ci avec jQuery 1.6.1 ou plus il est recommandé que .prop() être utilisé lors de la définition des attributs/propriétés booléennes.

99voto

Russ Cam Points 58168

il suffit d'ajouter l'attribut suivant

// for disabled i.e. cannot highlight value or change
disabled="disabled"

// for readonly i.e. can highlight value but not change
readonly="readonly"

jQuery pour faire le changement de l'élément (remplacer disabled pour readonly ci-dessous pour le réglage readonly d'attribut).

$('#fieldName').attr("disabled","disabled") 

ou

$('#fieldName').attr("disabled", true) 

REMARQUE: Comme de jQuery 1.6, il est recommandé d'utiliser .prop() au lieu de .attr(). Le code ci-dessus fonctionne exactement de la même sauf remplaçant, .attr() pour .prop().

82voto

Reem Points 669

Pour faire une entrée utiliser readonly :

pour le rendre utilisation en lecture/écriture :

Ajout de la `` attribut ne sera pas envoyer la valeur post.

-1voto

ProblemFactory Points 4470

Peut-être utiliser l'attribut disabled (désactivé):

<input disabled="disabled" id="fieldName" name="fieldName" type="text" class="text_box" />

Ou tout simplement utiliser l'étiquette tag: ;)

<label>

-1voto

Raghav Khunger Points 2273
<html xmlns="http://www.w3.org/1999/xhtml">
<head >
    <title></title>

    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>

</head>
<body>
    <div>
        <input id="fieldName" name="fieldName" type="text" class="text_box" value="Firstname" />
    </div>
</body>

<script type="text/javascript">
    $(function()
    {
        $('#fieldName').attr('disabled', 'disabled');

    });
</script>
</html>

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X