спрятать/показать поле ввода при нажатии на Radio

Discussion in 'PHP' started by GAiN, 29 Jan 2013.

  1. GAiN

    GAiN Elder - Старейшина

    Joined:
    2 Apr 2011
    Messages:
    2,543
    Likes Received:
    168
    Reputations:
    99
    естьтакое код
    PHP:
    <input type="checkbox" checked="checked" onclick="this.nextSibling.style.display=this.checked?'':'none';"><input type="text">
    он отображает текстовое поле при нажатии на него, и прячет если снять галку.
    как это реализовать к кнопке radio ? с ней не работает этот код, с кнопкой radio не получается такое
     
  2. GAiN

    GAiN Elder - Старейшина

    Joined:
    2 Apr 2011
    Messages:
    2,543
    Likes Received:
    168
    Reputations:
    99
    PHP:
    <script language="javascript">
    function 
    checkAll(oFormcbNamechecked) {
        for (var 
    i=0oForm[cbName].lengthi++) {
            
    oForm[cbName][i].checked checked;
            
    update(oForm[cbName][i], 'text' oForm[cbName][i].value);
        }
    }

    function 
    update(checkObj,textID) {
        var 
    textObj document.getElementById(textID);
        
    textObj.style.visibility checkObj.checked?'visible':'hidden';
    }
    </script>

    <form id="frm">
    <table>
    <tr>
        <td>
            <label><input type="checkbox" name="total" value="id" onClick="checkAll(document.getElementById('frm'), 'chk', this.checked)"> Check all</label>
        </td>
    </tr>
    <tr>
        <td><input name="chk" type="radio" id="a" value="1" onclick="update(this,'text1')"></td>
    <td> <input type="text" id="text1" style="visibility:hidden;"> </td>
    </tr>
    <tr>
    <td> <input name="chk" type="radio" id="b" value="2" onclick="update(this,'text2')"> </td>
    <td> <input type="text" id="text2" style="visibility:hidden;"> </td>
    <tr>
    <td> <input name="chk" type="radio" id="c" value="3" onclick="update(this,'text3')"> </td>
    <td> <input type="text" id="text3" style="visibility:hidden;"> </td>
    <tr>
    <td> <input name="chk" type="radio" id="d" value="4" onclick="update(this,'text4')"> </td>
    <td> <input type="text" id="text4" style="visibility:hidden;"> </td>

    </table>
    </form>
    вот только сделать так что бы при нажатии на другой radio button текстовое поле скрывалось у предыдущего radio
     
  3. barnaki

    barnaki Elder - Старейшина

    Joined:
    2 Nov 2008
    Messages:
    673
    Likes Received:
    125
    Reputations:
    4
    как то так (jquery)
    <input type="radio" name="name" id="box" / >
    <input type="text" name="test" id="box_input">
    <script type="text/javascript">
    $(function(){

    $("#box").bind("click",function(){
    $("box_input").toogle("fast");

    });
    )
    });
    </script>
     
Loading...