使用 php 和 javascript 表单选择对象动态更改类名?
在这里遇到一些麻烦。
设置:
select
对象可以选择“其他”
用户选择“其他”。
选择此特定值时运行脚本,并动态地将 input
对象的 class
从“隐藏”更改为“显示”(通过 css display< 隐藏和可见) /代码>)。
<p>Select a Grade:</p>
<select name="grade" id="grade" onchange="changeCssClass('otherGrade')">
<option value="No Specified Grade">Please Select</option>
<option value="201">201</option>
...
<option value="Secondary">Secondary</option>
<option value="otherGrade">Other</option>
</select>
<p>If "Other":</p>
<?php
$otherGrade = $_POST['grade'];
if($otherGrade = "otherGrade")
{
echo("<script language='javascript' type='text/javascript'>
function changeCssClass(objInputID)
{
if(document.getElementById(objInputID).className=='hide')
{
document.getElementById(objInputID).className = 'show';
}
else
{
document.getElementById(objInputID).className = 'hide';
}
}
</script>");
}
else
{
echo ("");
}
?>
<input type="text" name="otherGrade" id="otherGrade" class="hide" />
我应该从 select
对象中删除 onchange
事件吗?如果是这样,我不知道如何执行脚本。
任何解决方案将不胜感激。
Having some trouble here with this.
The setup:
A select
object with a choice of "Other"
User selects "Other".
Script runs when this specific value is chosen, and dynamically changes the class
of input
object from "hide" to "show" (hidden and visible with css display
).
<p>Select a Grade:</p>
<select name="grade" id="grade" onchange="changeCssClass('otherGrade')">
<option value="No Specified Grade">Please Select</option>
<option value="201">201</option>
...
<option value="Secondary">Secondary</option>
<option value="otherGrade">Other</option>
</select>
<p>If "Other":</p>
<?php
$otherGrade = $_POST['grade'];
if($otherGrade = "otherGrade")
{
echo("<script language='javascript' type='text/javascript'>
function changeCssClass(objInputID)
{
if(document.getElementById(objInputID).className=='hide')
{
document.getElementById(objInputID).className = 'show';
}
else
{
document.getElementById(objInputID).className = 'hide';
}
}
</script>");
}
else
{
echo ("");
}
?>
<input type="text" name="otherGrade" id="otherGrade" class="hide" />
Should I remove the onchange
event from the select
object? If so, I am at a loss as how to have the script executed.
Any solutions would be greatly appreciated.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
该脚本应始终包含在您的页面中,因为您希望在下拉列表中进行更改时运行该脚本。
实时示例位于:http://www.jsfiddle.net/MVymF/
The script should always be included in your page, since you want this to run while you make the changes in the dropdown list..
Live example at : http://www.jsfiddle.net/MVymF/
你为什么把这个放在后期活动中?您可以将其呈现为标准 javascript 作为页面的一部分。
why are you putting this in the post event? you can just render this as standard javascript as part of the page.
发布时,页面将刷新,重新加载时,您不会保存选择框的选定值。
发布后选择框不会保持选中状态。你必须这样做。
>其他
随着选项值的改变,显示隐藏也消失了。
请修复该问题
如果不需要提交页面, 。使用这个
http://api.jquery.com/val/
检查 select 的演示
On post , the page will be refreshing , ad on reloading you are not saving the selected value of the select box.
The select box is not keep selected after posting. You have to do that.
>Other
As the value of option change the display hide also gone.
Fix that
If no need to submit the page . use this
http://api.jquery.com/val/
check demo of select