Click here to Skip to main content
15,892,927 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
Hi,

I do have a form in which I am controlling some fields to make them enable or disable with radio button. If I make select field disabled, there is undefined index error. If make readonly, select options are selectable.

Any help is appreciated.
HTML
<html>
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width">
    <title>JS Bin</title>
</meta></meta></head>
<style>
    body, html {
        margin: 2%;
        padding: 0;
        height: 50%;
        align: center;
    }
</style>
<body>
    <td height="24" width="550px" align="left" valign="middle">
        <span class="f1">  TC Type <span class="star"><span class="star">*</span></span></span>
        <input type="radio" name="radSize" id="tc_type" value="false" checked="checked" />
        <label for="tc_type">Generic Test</label>
        <input type="radio">
               name="radSize"
               id="tc_type"
               value="true" onclick="handleClick(this);" />
        <label for="tc_type">Project Test</label>
        <p>
 
            <tr>
                <td height="24" width="50" align="left">
                    valign="middle">
                    <span class="f1"> Multiphase <span class="star">*</span></span>
                </td>
                <td align="left" valign="middle" nowrap="nowrap">
                    <select id="multiphase">
                            disabled="disabled"
                            onchange="onChangeFunction();">
                        <option value="" selected="selected"></option>
                        <option value="Yes">Yes</option>
                        <option value="No">No</option>
                    </select>
                </td>
            </tr>
        <p>
            <tr>
                <td width="126" height="24" align="left">
                    valign="middle">
                    <span class="f1">Project ID <span class="star">*</span></span>
                </td>
                <td width="126" height="24" align="left">
                    valign="middle">
                    <input type="text">
                           name="project_id" id="project_id" size="19"
                           value="" readonly="readonly">
                </input></td>
            </tr>
        <p>
            <tr>
                <td class="f1">   Text<span class="star">*</span>   </td>
                <td>
                    <textarea id="textInputField3">
                              name="textInputField3"
                              style="resize:vertical; text-align:top;  "
                              rows="5"
                              cols="52"
                              readonly="readonly"></textarea>
                </td>
            </tr>
</p></p></p></input></td></body>
</html>

JavaScript
 <script type="text/javascript">
function handleClick(myRadio) {
if (myRadio.value == "true") {
document.getElementById("multiphase").disabled = false;
}
else {
document.getElementById("multiphase").disabled = true;
}
}
</script>

PHP
$host='localhost';
$username='root';
$password='fpWGaew43DxZUA8z';
$db_name='webtp';
$tbl_name='textdata';

if(isset($_POST['key'])) 
{
$variable=$_POST['key'];
}	
else
{
$variable=NULL;
}


$tc_type=$_POST['tc_type'];
$project_id=$_POST['project_id'];
$multiphase=$_POST['multiphase'];
$textInputField3=$_POST['textInputField3'];

mysql_connect ('localhost', 'root', 'fpWGaew43DxZUA8z') or die ("cannot add test case");
mysql_select_db ('webtp');

$query="INSERT INTO textdata(tc_type, project_id, multiphase, textInputField3)VALUES ('$tc_type', '$project_id', '$multiphase', '$textInputField3')";

mysql_query($query) or die ('Error while adding test case');

echo "Test case added successfully.";
?>


What I have tried:

Tried with readonly tag for select but it is selectable. If used disabled , there is undefined index error.
Posted

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900