启用和禁用按钮点击jquery

启用和禁用按钮点击jquery

问题描述:

我正在使用jQuery和jQuery的手机,基本上我试图创建一个编辑按钮。我有一个用户信息默认情况下全部设置为禁用的表单。我想通过单击编辑按钮启用表单,然后在单击保存按钮时禁用表单。这里是形式:启用和禁用按钮点击jquery

<div data-role="fieldcontain"> 
      <label for="first_name">First Name:</label> 
      <input type="text" name="first_name" id="first_name" value="" placeholder="First Name" disabled /> 
     </div> 

     <div data-role="fieldcontain"> 
      <label for="last_name">Last Name:</label> 
      <input type="text" name="last_name" id="last_name" value="" placeholder="Last Name" disabled /> 
     </div> 

     <div data-role="fieldcontain"> 
      <label for="user_name">User Name:</label> 
      <input type="text" name="user_name" id="user_name" value="" placeholder="User Name" disabled /> 
     </div> 

     <div data-role="fieldcontain"> 
      <label for="password">Password:</label> 
      <input type="text" name="password" id="password" value="" placeholder="Password" disabled /> 
     </div> 

     <div data-role="fieldcontain"> 
      <label for="email">Email Address:</label> 
      <input type="text" name="email" id="email" value="" placeholder="Email Address" disabled="disabled" /> 
     </div> 

这里是我的按钮:

<button data-inline="true" id="edit">Edit</button> 
<button data-inline="true">Save</button> 

,这里是jQuery的我一直在玩:

$(document).ready(function(){ 
    $('#input:edit').click(function)(){ 
     $('input:email').attr("disabled", false); 
    } 
}); 

有一件事情我已经注意到了,这可能是问题的一部分,即使我将文本输入的代码从禁用改为启用,即使在刷新页面后,它们仍然保持禁用状态,并且我必须返回到我的主页,刷新,然后导航给用户i nfo页面使它们变为启用状态。所以,如果页面更新正确,可能会有一些我尝试过的东西是正确的。任何帮助赞赏。

+0

一切我读看起来就像这两个答案,但它不工作。我很确定现在它是我提到的有关页面看起来不会更新的问题。我是否需要强制页面以某种方式刷新? – 2013-02-11 17:37:04

这应该工作:

$(document).ready(function(){ 
    $('#input:edit').click(function)(){ 
     $('input:email').attr("disabled", ""); 
    } 
}); 

尝试

$(document).ready(function(){ 
$('#edit').click(function)(){ 
    $('#email').attr("disabled", false); 
} 
}); 

您应该使用$('input:email').textinput('enable');

jQuery Mobile textinput methods

+0

仍然无法正常工作,您认为我需要调用updatelayout还是什么? – 2013-02-11 18:13:41

+0

我们应该使用pageinit事件而不是doc.ready。请检查jsfiddle。 [http://jsfiddle.net/rnavaneethan/x9u6X/1/] – Ravindran 2013-02-12 01:45:07

好了,想通了。 改变的jQuery代码:

function edit() { 
    alert("edit"); 
    $('#first_name').prop('disabled', false); 
    $('#last_name').prop('disabled', false); 
    $('#user_name').prop('disabled', false); 
    $('#password').prop('disabled', false); 
    $('#email').prop('disabled', false); 
    location.reload(); 
} 

和按钮代码:

<button data-inline="true" id="edit" onclick="edit()">Edit</button> 
<button data-inline="true" id="save" onclick="save()">Save</button>