我有 2 个选择框,代码如下。
父选择框
<select name="user_type" id="user_type">
<option value="">Please Choose An Option</option>
<option value="PRIVATE OWNER">PRIVATE OWNER</option>
<option value="TRADER">TRADER</option>
</select>
子选择框
<select name="package_type" id="package_type">
<option value="">Please Choose An Option</option>
<option value="SINGLE ENTRY">SINGLE ENTRY</option>
<option value="FEATURED ENTRY">FEATURED ENTRY</option>
<option value="STANDARD">STANDARD</option>
<option value="ULTIMATE">ULTIMATE</option>
</select>
我希望如果从父选择框中选择私有所有者,那么应该只显示单个条目和精选条目,其余的将使用 jquery 删除或删除。
我不知道如何实现这一目标。
下面是我的 jquery 代码,它不包含关于我所要求的逻辑的代码,因为我不知道如何动态添加或删除标签。
另外请排除下面代码中的 php 部分,因为它是我自己的逻辑来从会话和数据库中获取值并将它们提供给 jquery 变量等。
请让我知道如何实现这一目标。
<script type="text/javascript" charset="utf-8">
$(document).ready(function() {
<?php
// Pre Populate User From Session
$user_type = $session->getSession("packages_user_type");
if ($user_type != "TRADER")
{
?>
$('#package_type_container, #slots_container, #notes_ultimate').hide();
<?
}
?>
$('#user_type').change(function()
{
var user_type = $(this).val();
if(user_type == "TRADER")
{
$('#package_type_container').slideDown().show();
$('#slots_container').slideDown().show();
}
else
{
$("#package_type").find("option:selected").removeAttr('selected');
$('#package_type_container').slideUp();
$('#slots_container').slideUp();
}
});
$('#package_type').change(function()
{
var package_type = $(this).val();
if(package_type == "SINGLE ENTRY")
{
$('#slots').val('1').attr('readonly', true);
$('#cost').val('').removeAttr('readonly');
}
else if(package_type == "FEATURED ENTRY")
{
$('#slots').val('1').attr('readonly', true);
$('#cost').val('').removeAttr('readonly');
}
else if (package_type == "ULTIMATE")
{
$('#notes_ultimate').slideDown().show();
$('#slots').val('').removeAttr('readonly');
$('#cost').val('0').attr('readonly', true);
}
else
{
$('#notes_ultimate').hide();
$('#slots').val('').removeAttr('readonly');
$('#cost').val('').removeAttr('readonly');
}
});
});
</script>