将按钮从disabled ='true'更改为'false'

时间:2012-12-05 02:16:21

标签: javascript jsp

我写了一份关于提交表单的代码。当我单击button(Download)时,状态被禁用,我想启用它,但是如果我在提交之间添加一个警告框并使禁用为false,则它可以正常工作。如果我删除警告框,它不起作用。这是时间问题还是其他?我该如何解决?

如何将按钮从disabled='true'更改为'false'

这是我的代码:

<div id="fm" class="btnStyleFunc" onclick="disabled='true';submitform()">
                                    <a><span>Download</span></a>
                                            </div>

function submitform(){
    var element1 = document.getElementById('form');

    if (element1 != null){
    } else {        
    }

    document.getElementById('form').submit();
    alert('test');   // <--------
    document.getElementById('fm').disabled = false;
}

4 个答案:

答案 0 :(得分:0)

试试这个:

function disabledFunc(id)
{
    var divObj = document.getElementById(id);
    divObj.disabled = false;
}

使用按钮id调用该函数:

disabledFunc('fm');

希望它有所帮助!

答案 1 :(得分:0)

使用此:

<div id="fm" class="btnStyleFunc" onclick="this.disabled=true;submitform()">
                                    <a><span>Download</span></a>
                             </div>

当然,元素是DIV而不是按钮,所以我不知道disabled对它的作用有多好......

答案 2 :(得分:0)

正如Farish和MrXenotype指出的那样,“禁用”属性对div元素毫无意义。它可以动态添加,但不会影响行为。但我理解为什么你可能想要使用div而不是按钮,特别是如果你花时间定制样式表以使其看起来像你想要的那样。

我认为你可以通过做一些小改变来获得你想要的行为:

<div id="fm" class="btnStyleFunc" onclick="this.onclick=null;submitform()">
   <a><span>Download</span></a>
</div>

基本上,当您的onclick处理程序执行时,您将其与div元素断开连接。现在当有人第二次点击你的“按钮”时,它什么都不做。在onclick期间,您可能还希望将类更改为btnStyleFunc以外的其他类 - 也许是一个名为btnStyleFuncDisabled的新类。然后,您可以修改样式表,以使该类的任何div元素显示为灰色。

<div id="fm" class="btnStyleFunc" 
     onclick="this.className='btnStyleFuncDisabled'; this.onclick = null; dosubmit(this)">
   <a><span>Download</span></a>
</div>

答案 3 :(得分:0)

请注意:

<div id="fm" class="btnStyleFunc" onclick="disabled='true';submitform()">

将使用字符串值'true'和

创建一个全局变量disabled
 document.getElementById('fm').disabled = false;

将id为“fm”的元素的disabled属性与布尔值false进行比较。