Search code examples
atk4

Multiple dropdown with default selected values


I'm adding multiple dropdown to form, but i would like to have some values selected by default.

form->addField('DropDown', 'fieldname','Field Caption')->setAttr('multiple')->setModel('SomeModel');

So when the user would open this form, values with id 1,5 and 6 would be selected. I checked internet, but didn't find any examples for this..

Also checked atk4\lib\Form\Field\DropDown.php, but couldn't find the solution either :(

I know the usual usage for forms is like this:

$form->addField('line','name')->set('John');

But id doesn't work here?

Thanks in advance!

solution:

if($campaign->get('labels')){
$jsfunction = 'var values="'.$campaign->get('labels').'";$.each(values.split(","), function(i,e){$("#nottyfly_createcampaign_form_labels option[value=\'" + e + "\']").prop("selected", true);})';
  $this->js(true,$jsfunction);
}

Solution

  • Here is quick code:

    $jsfunction = 'var values="'.$campaign->get('labels').'";$.each(values.split(","), function(i,e){$("#nottyfly_createcampaign_form_labels option[value=\'" + e + "\']").prop("selected", true);})';
    $this->js(true,$jsfunction);