4

我想禁用下拉列表中的一些选项,我有一个这样的数组

  array(
'all' => 'ALL',
'skip1' => 'User Define Groups:',
(int) 43 => '--Usii Group2',
(int) 105 => '--Usii Mailing [ mailing list]',
(int) 106 => '--test [ mailing list]',
'skip2' => 'Dynamic Define Groups:'


i want to disable value of skip1 and skip2, if user click on skip1 and skip2 value it can't be select in dropdown list, this is my view file     


    echo $this->FormManager->input('view',array('label'=>'View ','type'=>'select','options'=>$viewGroup,'default'=>$default)); 

任何人都可以帮助做到这一点,将不胜感激,在此先感谢。

4

4 回答 4

6

我认为您应该禁用客户端的选项,即来自 Jquery 的类似这样的选项

HTML

<select>
    <option value="all">ALL/option>
    <option value="skip1">User Define Groups:</option>
    <option value="43 ">--Usii Group2</option>
    <option value="105">--Usii Mailing [ mailing list]</option>
    <option value="106">--test [ mailing list]</option>
    <option value="skip2">'Dynamic Define Groups:</option>
</select>

jQuery

$('option[value=skip1]').prop('disabled', true);
$('option[value=skip2]').prop('disabled', true);
于 2013-02-28T09:56:19.540 回答
1

为了补充 Moyed Ansari 的回答:您可以使用 .attr jquery 函数。

$('option[value=skip1]').attr('disabled', true);
$('option[value=skip2]').attr('disabled', true);
于 2014-01-25T10:30:33.127 回答
0

尝试通过以下方式重新排列数组:

 array(
      'all' => 'ALL',
      'skip1' => array(
           'name' => 'User Define Groups:',
           'value' => 'skip1',
           'disabled' => true
      )
      (int) 43 => '--Usii Group2',
      (int) 105 => '--Usii Mailing [ mailing list]',
      (int) 106 => '--test [ mailing list]',
      'skip2' => (
           'name' => 'Dynamic Define Groups:'
           'value' => 'skip2',
           'disabled' => true
      )
 )

或者你可以简单地在你的视图上试试这个:

echo $this->FormManager->input('view',array('label'=>'View ','type'=>'select','options'=>$viewGroup,'default'=>$default, 'disabled'=>array('skip1','skip2')));

两者都不需要任何 JavaScript 或 jQuery。

于 2015-02-03T11:11:45.873 回答
0

使用数组数组。

$values = array(
  'all' => 'all',
  'skip1' => array(
    5 => 'ex',
    6 => 'ex',
    7 => 'ex',
  ),
  'skip2' => array(
    5 => 'ex',
    6 => 'ex',
    7 => 'ex',
  )
)

见这里:http ://book.cakephp.org/2.0/en/core-libraries/helpers/form.html#FormHelper::select

于 2013-02-28T09:46:31.990 回答