我有两个按钮:查询和导出。默认情况下,“导出”按钮处于禁用状态,但单击“查询”按钮并且表单已加载时,我希望启用导出按钮。
现在,当我点击“查询”时,导出会启用一秒钟,然后又会重新启用。我假设在提交表单时它有一些事情要做,并将“导出”按钮恢复为原始状态。
<button type="submit" class="btn btn-primary btn-small" id="query">Query</button>
<button class="btn btn-primary btn-small" id="export-button" disabled="disabled">Export</button>
这是我的jQuery目前的样子。
$(".form").on("submit", function () {
$('#export-button').prop('disabled', false);
})
答案 0 :(得分:0)
我知道我已经发布了一段时间了,但是如果有人在这里遇到类似的问题,那就是我要解决的问题:
首先,我在表单中创建了一个隐藏的输入,以便记住按钮是否已被点击
<input type="hidden" name="clicked" value="true" />
在此功能中,如果单击按钮,它将检入会话存储,或者将其保存到会话存储。
$(function () {
$(document).ready(function () {
var clicked = sessionStorage.getItem('clicked');
if (clicked == 'true') {
$('#exportButton').removeAttr('disabled');
} else {
$('#exportButton').attr('disabled', 'disabled');
}
});
$('#query').on("click", function () {
sessionStorage.setItem('clicked', 'true');
});
$('#reset').on("click", function () {
sessionStorage.setItem('clicked', 'false');
});
});
答案 1 :(得分:-1)
jQuery 1.6 + https://api.jquery.com/removeProp/
jQuery 1.5- https://api.jquery.com/removeAttr/
如果你有 jQuery 1.6 + ,请尝试
$('#export-button').removeProp('disabled');
如果你有 jQuery 1.5 或更低版本,请尝试使用:
$('#export-button').removeAttr('disabled');
并确保您的表单包含课程.form
答案 2 :(得分:-1)
你可以通过这种方式实现它。假设您使用的是带有默认get方法的表单标记。
<form>
<button type="submit" name="submit" class="btn btn-primary btn-small" id="query">Query</button>
<?php
if(empty($_GET))
$str = 'disabled="disabled"';
else
$str ="";
?>
<button class="btn btn-primary btn-small" id="export-button" <?php echo $str; ?>>Export</button>
</form>