我有一个简单的PHP脚本,它带有两个选择字段,它们都是简单的数字值。脚本对两个字段的总和也有最大值。我试图动态地过滤第二个下拉列表,以便用户不能选择超过最大值。例如,如果我的最大值是10,那么第一个选择下拉列表将会有1-10个。选择6的用户将只能在第二个选择下拉列表中选择0-4。根据另一个选择下拉菜单筛选一个HTML选择下拉菜单
我知道这应该是相当简单的,但我是一个总的JavaScript/jQuery新手。我有有搜索到SO和Google,但我不明白我已经知道从哪里开始的例子,更不用说弄清楚如何根据我的需要定制它们。我已经提供了我已经有的代码,显然没有任何我需要的过滤。
一些示例代码(假设已定义$最大值):
<script type="text/javascript">
var max = <?php echo $maximum; ?>;
</script>
<select name="dropdown1" id="dropdown1">
<?php
for ($i = 1; $i <= $maximum; $i++)
{
echo '<option value="'.$i.'">'.$i.'</option>';
}
?>
</select>
<select name="dropdown2" id="dropdown2">
<?php
for ($i = 0; $i <= $maximum; $i++)
{
echo '<option value="'.$i.'">'.$i.'</option>';
}
?>
</select>
在此先感谢。
我现在有下面这段的jQuery在它自己的.js文件:
$(document).ready(function() {
// var max ??
$("#dropdown1").change(function() {
var selectedVal = $(this).find("option:selected").val();
$("#dropdown2 option").removeAttr("disabled").removeAttr("selected");
$("#dropdown2 option").each(function() {
if($(this).val() > max - selectedVal*1)
$(this).attr("disabled", "disabled");
});
});
});
不过,我有点坚持从我的PHP脚本到jQuery的获得$最大。我想我必须创建一个JavaScript变量,但不太确定如何将它传递给jQuery。如果我将jQuery嵌入到相同的PHP脚本中,只需将它回显出来,我可以弄清楚如何做到这一点,但不太确定如何将它作为参数传递。
更新我的代码基础上的意见。但不知道如何将一个变量传递给jQuery代码片段。 – Biggles 2012-02-12 23:29:48