我在使用带有数组的表单中选定的值隐藏我的
Admin_Email_Address
时遇到问题
数组是
0-Activated
和 1-Deactivated
我想做的是,如果我从下拉列表中选择
1
,电子邮件表单将被隐藏,而当0
时,它不会隐藏并且可以输入
<!-- STATUS -->
<div class="col-lg-3 col-md-4">
<?php $err = isset($_SESSION['sys_employees_edit_status_err']) ? 1 : 0; ?>
<div class="form-group">
<label for="status" class="mr-1<?php if ($err) { echo ' text-danger'; } ?>"><?php if ($err) { echo '<i class="far fa-times-circle mr-1"></i>'; } echo renderLang($lang_status); ?></label> <span class="right badge badge-success"><?php echo renderLang($label_required); ?></span>
<select class="form-control required<?php if ($err) { echo ' is-invalid'; } ?>" id="status" name="status" required>
<?php
foreach ($status_arr as $status) {
echo '<option value="' . $status[0] . '"';
if (isset($_SESSION['sys_employees_edit_status_val'])) {
if ($_SESSION['sys_employees_edit_status_val'] == $status[0]) {
echo ' selected';
}
}
echo '>' . renderLang($status[1]) . '</option>';
}
?>
</select>
<?php if ($err) {
echo '<p class="error-message text-danger mt-1">' . $_SESSION['sys_employees_edit_status_err'] . '</p>';
unset($_SESSION['sys_employees_edit_status_err']);
} ?>
</div>
</div>
<!-- ADMIN EMAL ADDRESS -->
<div class="col-lg-3 col-md-4">
<div class="form-group">
<label for="admin_email_address" class="mr-1<?php echo $err ? 'text-danger' : ''; ?>"> <?php echo $err ? '<i class="far fa-times-circle mr-1"></i>' : ''; echo "Admin Email Address" ?></label>
<span class="right badge badge-success"><?php echo renderLang($label_required); ?></span>
<input type="text" class="form-control required<?php echo $err ? ' is-invalid' : ''; ?>" id="admin_email_address" name="admin_email_address" placeholder="" required>
</div>
</div>
<script>
$(".status").keyup(function() {
if ($('select#status option:selected').val(); = 1 ) {
$('#admin_email_address').attr('hidden', true);
} else {
$('#admin_email_address').attr('hidden', false);
}
});
</script>
我尝试了很多次来获得它的价值,但它仍然不起作用
我现在解决了它,我只是改变了jquery值来改变,所以它更容易
<!-- STATUS -->
<div class="col-lg-3 col-md-4">
<?php $err = isset($_SESSION['sys_employees_edit_status_err']) ? 1 : 0; ?>
<div class="form-group">
<label for="status" class="mr-1<?php if ($err) { echo ' text-danger'; } ?>"><?php if ($err) { echo '<i class="far fa-times-circle mr-1"></i>'; } echo renderLang($lang_status); ?></label> <span class="right badge badge-success"><?php echo renderLang($label_required); ?></span>
<select class="form-control required<?php if ($err) { echo ' is-invalid'; } ?>" id="status" name="status" required>
<?php
foreach ($status_arr as $status) {
echo '<option value="' . $status[0] . '"';
if (isset($_SESSION['sys_employees_edit_status_val'])) {
if ($_SESSION['sys_employees_edit_status_val'] == $status[0]) {
echo ' selected';
}
}
echo '>' . renderLang($status[1]) . '</option>';
}
?>
</select>
<?php if ($err) {
echo '<p class="error-message text-danger mt-1">' . $_SESSION['sys_employees_edit_status_err'] . '</p>';
unset($_SESSION['sys_employees_edit_status_err']);
} ?>
</div>
</div>
<!-- ADMIN EMAIL ADDRESS -->
<div class="col-lg-3 col-md-4" id="admin_email_address_container" style="<?php echo (isset($_SESSION['sys_employees_edit_status_val']) && $_SESSION['sys_employees_edit_status_val'] == 1) ? '' : 'display: none;'; ?>">
<div class="form-group">
<label for="admin_email_address" class="mr-1<?php echo $err ? 'text-danger' : ''; ?>"> <?php echo $err ? '<i class="far fa-times-circle mr-1"></i>' : ''; echo "Admin Email Address" ?></label>
<span class="right badge badge-success"><?php echo renderLang($label_required); ?></span>
<input type="text" class="form-control required<?php echo $err ? ' is-invalid' : ''; ?>" id="admin_email_address" name="admin_email_address" placeholder="" required>
</div>
</div>
<script>
document.getElementById('status').addEventListener('change', function() {
var adminEmailContainer = document.getElementById('admin_email_address_container');
if (this.value == 0) {
adminEmailContainer.style.display = '';
} else {
adminEmailContainer.style.display = 'none';
}
});
</script>