jqueryfancybox 输入焦点

jac*_*ack 0 jquery cakephp jquery-selectors fancybox

我正在使用cakephp 1.3 和fancybox ..我已经设法在fancybox 中放置了一个表单。现在我想将光标聚焦到输入字段之一。我已经厌倦了尝试很多事情。我的代码如下

<script type="text/javascript">
jQuery(document).ready( function() {
//document.getElementById('frmname.answer').focus(); 
jQuery("a#answer").fancybox({
        'transitionIn'  :   'elastic',
        'transitionOut' :   'elastic',
        'speedIn'    :  600, 
        'speedOut'   :  200, 
        'overlayShow'   :   false,
        'href'  : this.href,
});

}); /* */
</script>
Run Code Online (Sandbox Code Playgroud)

我试过以下事情

'onComplete' : function() {
               $('#fancybox-frame').contents().find('#answer').focus();
            },
Run Code Online (Sandbox Code Playgroud)

$('#answer').focus();
Run Code Online (Sandbox Code Playgroud)

在我的脚本中。但没有好的结果>任何人都可以指出我对我的代码所做的错误。提前致谢。

我的fancybox内容是这样的:

<div style='display:none'>
    <div id='reply'>

        <h1>Reply For <?php echo $offer['OfferBoard']['headline'] ?></h1>


        <ul class="nrml_list" > 

                <?php echo $this->Form->create('OfferAnswer',array('id'=>'frm','name'=>'frmname'), array('action' => 'reply/'.$offer['OfferBoard']['id'],'inputDefaults'=> array('label'=>false))); ?>


                <li> 
                    <div class='ulabel' style="float:right;" >Reply Text</div>
                    <div>
                        <div class="left"><?php echo $form->textarea('answer',array('class'=>'tarea1','label'=>FALSE,'id'=>'answer')); ?></div>
                        <div class="clear"></div>
                        </div>  
                </li>

                <li> 
                    <div class='ulabel' ></div>
                    <div>
                        <div class="left"><?php 
                                $attributes=array('type'=>'checkbox','div'=>false,'value' => '1','hiddenField' => false,'label'=>FALSE);
                                echo $this->Form->input('copy_to',$attributes)." Send Copy ";  
                        ?></div>
                        <div class="clear"></div>
                        </div>  
                </li>



        </ul>
            <?php echo $this->Form->end('Reply'); ?>



    </div>
Run Code Online (Sandbox Code Playgroud)

Sud*_*oti 5

尝试:

//在onComplete中没有引号,这对我有用
onComplete:函数(){
   $('#answer').focus();
},

希望能帮助到你