essaye ça :
page.php
Code :
- <form name="formulaire">
- <div id="champSelect">
- <select name="selection" onchange="changer()">
- <option value="art01">article 1</option>
- <option value="autre">autre article</option>
- </select>
- </div>
- </form>
|
script.js
Code :
- function changer() {
- if (document.formulaire.selection.value == "autre" ) {
- document.getElementById('champSelect').innerHTML = '<input type="text" name="selection">';
- }
- }
|
Edit :
en revanche, comme le dit masklinn, si javascript est désactivé, ça ne marchera pas.
Tu peux faire ça dans ce cas :
page.php
Code :
- <body onload="cacherInput()">
- <form name="formulaire">
- <div id="champSelect">
- <select name="selection" onchange="changer()">
- <option value="art01">article 1</option>
- <option value="autre">autre article</option>
- </select>
- </div>
- <div id="champInput">
- Autre article : <input type="text" name="selectionInput">
- </div>
- </form>
- </body>
|
et le JS :
script.js
Code :
- function cacherInput() {
- document.getElementById('champInput').visibility = "hidden";
- }
- function changer() {
- if (document.formulaire.selection.value == "autre" ) {
- document.getElementById('champInput').visibility = "visible";
- document.getElementById('champSelect').visibility = "hidden";
- }
- }
|
Comme ça, si javascript est désactivé, l'utilisateur voit quand-même le champ input.
Message édité par cosmoschtroumpf le 24-11-2004 à 12:31:56