使用dojo的Zend表单:如何获取tabcontainer中的textbox的Parentname?

时间:2011-08-10 14:04:14

标签: zend-framework dojo

我正在使用zend dojo表单: 我使用

创建了标签
<?php $this->tabContainer()->captureStart('main-container', array('design' => 'headline'),
                        array( 'style'=>'height:450px;width:500px' ));
      echo $this->contentPane('tab1',"<div>User Name: $this->form->txtUserName</div>",
                array('region' => 'top','title'=>'General Info'),
                array('style' => 'background-color: white;') );
      echo  $this->contentPane('Contact Info',
                            "<div>User Name: $this->form->txtPassword</div>",
                             array('region' => 'left', 'title'=>'Contact Info'),
                     array('style' => 'width: 200px; background-color: white;') );
      echo $this->tabContainer()->captureEnd('main-container'); ?>

当我点击按钮时,我使用from.validate()收到错误,但是当选项卡“联系信息”打开并且我点击按钮时它会在左侧角显示消息。

如何获取发生错误的textBox“id”并打开包含该文本框的标签。

1 个答案:

答案 0 :(得分:0)

这是javascript函数:

** function getParentname(error_id){

for(var p = dijit.byId(error_id).domNode.parentNode; p; p = p.parentNode){

 var id = p.getAttribute && p.getAttribute("widgetId");

    if(id){

        var parent = dijit.byId(id);
        return parent.isContainer ? parent : null;
}
} 

}`** 其中error_id是您的文本框ID。