当选择了选项值时,我使用了一个脚本来隐藏输入。表单已提交,但为我隐藏的变量提供了一个未定义的索引错误。我的脚本如下:
function Sbox()
{
if(document.getElementById("selectdrop").value=='2')
{
document.getElementById("text2").disabled=true;
}
}
我的表格如下:
<form action="" method="POST>
<select name="text1" id="selectdrop" onchange="return Sbox();">
<option value="1">1</option>
<option value="2">2</option>
</select>
<input type="text" id="text2" name="text2"/>
</form>
当我选择选项2时,禁用textbox2。但是当我提交表单时,我的数据正在插入,但是显示了text2的未定义索引错误。
我提交的PHP代码如下:
if(isset($_POST['submit']))
{
$text1=$_POST['text1'];
$text2=$_POST['text2'];
$sql="INSERT INTO letters (text1 , text2) VALUES ('$text1' , '$text2')";
if(mysqli_query($connect , $sql)==true){
echo "data has been successfully entered";
}
else{
echo "data not entered";
}
}
答案 0 :(得分:0)
您正在停用text2。尝试使用以下代码,它应该可以正常工作。
function Sbox()
{
if(document.getElementById("selectdrop").value=='2')
{
var s = document.getElementById("text2");
s.setAttribute("type", "hidden");
}
}
现在,您将能够在PHP中获取text2的值作为其隐藏而未禁用.Disabled元素的值不会获得POSTED。
希望它有所帮助。
感谢。