0

我在这里查看了许多使用 jquery 在 javascript 中启用和禁用按钮的示例,其中任何一个都对我有用。

这里是我的绝境。

<asp:TextBox ID="mytext" runat="server" onkeyup="enableButton(this, 3)"/>
<asp:Button ID="myButton" runat="server" Text="Search" disabled="disabled" />

和我的 javascript

        <script type="text/javascript">
            function enableButton(control, chars) {
                if (control.value.length >= chars) {
                    $('#myButton').removeAttr("disabled");
                } else {
                    $('#myButton').attr("disabled", true);
                }
            }
        </script>

编辑

各位大侠,我终于明白了!

我在代码隐藏的 LoadPage 事件中注册了我的 javascript 函数的调用

mytext.Attributes.Add("onkeypress", "enableButton('" + mytext.ClientID + "',3,'" + mybutton.ClientID + "');"

谢谢大家的时间!

4

7 回答 7

4

Disabled 是一个属性,而不是一个属性。

利用:

$('#myButton').prop("disabled", "disabled");
于 2013-07-22T19:01:44.880 回答
0
    function enableButton(control, chars) {
        if (control.value.length >= chars) {
            $('#<%= myButton.ClientID%>').prop("disabled", false);
            $('#<%= myButton.ClientID%>').css("pointer-events", "auto");
           $('#<%= myButton.ClientID%>').css("opacity", "1");
        } else {
            $('#<%= myButton.ClientID%>').prop("disabled", true);
            $('#<%= myButton.ClientID%>').css("pointer-events", "none");
            $('#<%= myButton.ClientID%>').css("opacity", ".5");
        }
    }

disabled仅在 IE 中有效,在 chrome 中无效,因此添加 css pointer-events none 会更改鼠标指针并且不允许单击链接。

编辑:myButton.ClientID不使用时也使用ClientID = static

于 2013-07-23T14:17:19.410 回答
0

用这个。

$('#<%= myButton.ClientID%>').attr('disabled', 'disabled');
于 2013-07-22T19:08:00.767 回答
0

您是否在 head 标签中添加了 jquery 库?

<script src="http://code.jquery.com/jquery-1.10.1.min.js"></script>
 <script src="http://code.jquery.com/jquery-migrate-1.2.1.min.js"></script>
于 2013-07-22T19:13:21.430 回答
0

最后我得到了它!

我在代码隐藏的 LoadPage 事件中注册了我的 javascript 函数的调用

mytext.Attributes.Add("onkeypress", "enableButton('" + txtTRReference.ClientID + "',3,'" + btnGetTR.ClientID + "');"

谢谢大家的时间!

于 2013-07-23T04:27:35.357 回答
0

Javascript:

<script language="javascript" type="text/javascript">


function SetButtonStatus(sender, target)
{

if ( sender.value.length >= 12 )
document.getElementById(target).disabled = false;

else

document.getElementById(target).disabled = true;
}



</script>

HTML:

<asp:TextBox ID="txtText" runat="server" onkeyup="SetButtonStatus(this, 'btnButton')"></asp:TextBox>

<asp:Button ID="btnButton" runat="server" Text="Button" Enabled="false" />
于 2013-07-22T19:04:01.267 回答
0

这是我以前做过的。

//On document load
$(function(){
      //Set button disabled
      $("input[type=submit]").attr("disabled", "disabled");

      //Append a change event listener to you inputs
      $('input').change(function(){
            //Validate your form here, example:
            var validated = true;
            if($('#nome').val().length === 0) validated = false;

            //If form is validated enable form
            if(validated) $("input[type=submit]").removeAttr("disabled");                              
      });

      //Trigger change function once to check if the form is validated on page load
      $('input:first').trigger('change');
})
于 2013-07-22T19:04:08.220 回答