如果未选择特定下拉列表中的值,我正在尝试禁用提交按钮。下拉菜单和按钮的代码如下所示:
<li>
<select name="names" id="names">
<option value="">Constituency</option>
<!-- populates the drop down with names -->
<?php foreach ($cons as $constituency): ?>
<option value="<?php htmlout($constituency['ids']); ?>">
<?php htmlout($constituency['names']); ?>
</option>
<?php endforeach; ?>
<?php if (isset($selectError)): ?>
<p><?php htmlout($selectError); ?></p>
<?php endif; ?>
</select>
</li>
<li><input type="hidden" name="action" value="search"></li>
<li><input type="submit" value="SEARCH" class="button search" id="jsbutton" disabled="disabled"></li>
所以下拉列表的 id 为 'names' ,按钮的 id 为 'jsbutton' 并设置为 'disabled' 。
然后,我尝试使用以下 JQuery 来定位它,但无论如何该按钮仍处于禁用状态:
$(document).ready(function() {
if ($('#names').val() = '')
{
$('#jsbutton').attr('disabled', 'disabled');
}
else
{
$('#jsbutton').removeAttr('disabled');
}
});
所以我想做的是:
- 检查是否从 dropdpwn 中选择了值。
- 如果还没有,则禁用按钮。
- ELSE 已从下拉列表中选择了一个值,因此应启用该按钮。
对此的任何帮助表示赞赏。
PHP 填充下拉列表:
try
{
$cons_result = $pdo->query("SELECT id, name
FROM constituency
ORDER BY name");
}
catch (PDOException $e)
{
$error = 'Error fetching constituencies from database!' . $e->getMessage();
include 'error.html.php';
exit();
}
foreach ($cons_result as $rows)
{
$cons[] = array('ids' => $rows['id'], 'names' => $rows['name']);
}
include 'searchform.html.php';
}