未设置的隐藏形式cakephp

时间:2010-10-25 20:52:26

标签: jquery ajax cakephp

如何从输入中取消设置此选项?

我使用ajax填充此字段,然后我需要显示它

感谢

2 个答案:

答案 0 :(得分:2)

您无法可靠地更改输入的type,但您可以创建新元素并复制各种属性:

$(document).ready(
 function(){
  $('<input type="text" />')
     .appendTo('form')
     .val($('input:hidden[name=nameOfHiddenElement]').val())
     .attr('name','nameAsAppropriate')
     .remove('input:hidden[name=nameOfHiddenElement]');
 }
);

Link to a (basic) JS Fiddle demo

答案 1 :(得分:0)

我建议不要创建<input type="hidden" />,然后尝试将其笨拙地转换为您所追求的类型。相反,使用您需要的任何类型(文本,选择等)创建它,并使用CSS最初隐藏它。

在您看来,例如:

<style type="text/css">
input.hidden { display: none; }
</style>
<?php echo $this->Form->input('Model.fieldName', array('type'=>'text','class'=>'hidden'))?>

然后,在您的AJAX回调中,显示输入:

$.ajax('/ajax/url/here', {}, function(response, status){
    // perform your field population, then...
    $('input.hidden').show();
});