我是yii的新手。在我的项目中,我想通过Cmenu
栏
array('label' => 'Category', 'url' => array('site/catagory', 'visible' => !Yii::app()->user->isGuest),
并且参数传递来自droupdown列表,该列表也在droupdownlist的导航条形码中
$site = Site::model()->findAll();
$data = CHtml::listData($site, 'id', 'type');
echo $form->dropDownList($siteid, 'selectedsiteid', $data, array('class' => "form-control"));
位于菜单栏之后。请有人帮助我。
提前谢谢......
答案 0 :(得分:0)
我用javascript解决了它,菜单按钮代码为
array('label' => 'Category', 'url' => '#','linkOptions'=>array('onclick'=>'getsid()'),'visible' => !Yii::app()->user->isGuest),
并称为java脚本
function getsid()
{
$sid=$('#Site_selectedsiteid').val();
window.location.href = window.location.pathname.substring( 0, window.location.pathname.lastIndexOf( '/' ) + 1 ) + 'catagory?sid=' + $sid;
}
答案 1 :(得分:0)
不建议使用onclick +全局函数/变量。随着时间的推移,事情会变得混乱。
使用jQuery稍微优雅的解决方案。了解逻辑如何与视图分离。
PHP:
array(
'label' => 'Category',
'url' => '#',
'linkOptions' => array( 'id' => 'menu-link' ),
'visible' => ! Yii::app( )->user->isGuest
),
使用Javascript:
$( document ).ready(
function ( )
{
$( '#menu-link' ).click(
function ( )
{
var sid = $( '#Site_selectedsiteid' ).val( );
var currentURL = window.location.pathname;
var newUrl = currentURL.substring( 0, currentURL.lastIndexOf( '/' ) + 1 );
window.location.href = newUrl + 'category?sid=' + sid;
}
);
}
);