如何解决如果禁用了多个选择器,则jQuery返回true
我正在处理一种形式,其中除“ textarea”外,所有字段均被禁用。 当用户在文本区域中键入任何内容且所有输入均被禁用时,将启用按钮“有效”。 我用单个选择器尝试了一下,但它起作用了,但是使用多个选择器却不起作用。
HTML(故意保留一个输入字段以限制按钮的启用)
protected void Page_Load(object sender,EventArgs e)
{
SqlDependency.Start(link);
SomeMethod();
}
void OnDependencyChange(object sender,SqlNotificationEventArgs e)
{
Response.Write("<script>alert('row updated/deleted/inserted')</script>");
dependency.OnChange -= OnDependencyChange;
SomeMethod();
}
void SomeMethod()
{
string link = "My database connection";
SqlConnection connection = new SqlConnection(link);
SqlCommand command = new SqlCommand("SELECT [id],[name],[age] " + "FROM [dbo].[People]",connection);
SqlDependency dependency = new SqlDependency(command);
dependency.OnChange += new OnChangeEventHandler(OnDependencyChange);
connection.Open();
SqlDataReader reader = command.ExecuteReader();
}
JQUERY
<div id="inputs">
<input type="file" name="first" id="first" class="upload_file"/>
<input type="file" name="second" id="second" class="upload_file" disabled/>
<input type="file" name="third" id="third" class="upload_file" disabled/>
<textarea name="response" id="response"></textarea> <br/>
</div>
<div id="button">
<button id="valid" disabled>Valid</button>
</div>
解决方法
我相信您需要计算已启用的.upload_file
类的输入。如果该数字为0(并且文本字段中当然有内容),则可以启用输入。像下面这样的
$('#response').on('keyup',function(e) {
// if response is not set return false
if ($("#response").length && !$.trim($("#response").val())){
$('#valid').attr('disabled',true)
}else {
// if response is set and inputs are not disabled,return true
if( $(".upload_file:enabled").length==0){
$('#valid').attr('disabled',false)
}
}
});
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。