2013-08-22 54 views
0

我想知道如何在PHP中按钮单击时显示表单域可编辑。我认为文件的一部分:使按钮单击表单域可编辑

<?php echo Form::label("email", "Email"); ?> 
    <?php echo Form::input("email", $userdetails->email,array('disabled' => 'disabled')); ?> 
    <br/> 
    <?php echo Form::label("description", "Description"); ?> 
    <?php echo Form::textarea("description", $userdetails->description,array('disabled' => 'disabled')); ?> 
    <br/> 
    <?php echo Form::submit("submit", "Submit"); ?> 
    <?php echo Form::close(); ?> 
    <a href="../index"><input type="button" name="edit" value="Edit" ></a> 

在页面加载字段应该是disabled

如果用户单击编辑按钮,隐藏字段应该变为可编辑。

+0

为什么在PHP?这可以在客户端轻松处理。 – brbcoding

+0

哪一个是隐藏字段? –

+0

@brbcoding你可以请我解释一下如何使用javascript/jquery处理它,任何示例对我来说都很容易学习 – user2681579

回答

1

模拟形式

<form> 
    <input id="inp" type="text" disabled> 
    <input id="edit" type="button" value="Edit"> 
</form> 

的Javascript

var el = document.getElementById('edit'); 
el.addEventListener('click', function(){ 
    document.getElementById('inp').disabled = false; 
}); 

DEMO

可用性的缘故,但是,我的建议是:

var el = document.getElementById('edit'); 
var inp = document.getElementById('inp'); 
el.addEventListener('click', function(){ 
    inp.disabled = false; 
    inp.focus(); // set the focus on the editable field 
}); 

编辑:OP评论说,点击时需要启用几个元素。

var el = document.getElementById('edit'); 
var frm = document.getElementById('myform'); 
el.addEventListener('click', function(){ 
    for(var i=0; i < frm.length; i++) { 
     frm.elements[i].disabled = false; 

    } 
    frm.elements[0].focus(); // put focus on the first element 
}); 

Another Demo

+0

我遵循你的解决方案,工作正常。 – user2681579

2

您可以使用jQuery的disabled属性设置为false

jQuery("input[name=edit]").click(function(){ 
    jQuery("input[name=email],input[name=description]").attr("disabled",false); 
}); 

input[name=email]选择电子邮件输入字段

input[name=description]选择说明输入字段

相关问题