如何将 selected 选项作为值传递给 moodle select
how to pass the selected option as value in moodle select
我想将选项作为值传递:这是我的代码。
$master_id=array();
$ret1="select Id from m_tl_mastercourse";
$result1=get_records_sql($ret1,$limitfrom='', $limitnum='');
foreach($result1 as $resu){
$master_id[ ]=$resu->Id;
}
$mform->addElement('select', 'master_id', get_string('selectcourse'), $master_id);
如果我使用这意味着它如下所示:
<select id="id_master_id" name="master_id">
<option value="0">php01</option>
<option value="1">ios01</option>
<option value="2">and01</option>
<option value="3">java01</option>
<option value="4">python01</option>
<option value="5">yii2</option>
我想要的是确切的值将传递给选项值。如何获得
您将作为 $master_id[ ]=$resu->Id;
添加到数组中,默认情况下,它会为数组分配一个数字索引并为您提供下一个可用索引号。自己分配密钥如下:
$master_id[$resu->Id]=$resu->Id;
请注意,这假定您所有可能的选项都是唯一的。
您可以使用获取记录菜单功能简化此操作。
https://docs.moodle.org/dev/Data_manipulation_API#get_records_menu
$options = $DB->get_records_menu('m_tl_mastercourse', [], 'id', 'id, name');
$mform->addElement('select', 'master_id', get_string('selectcourse'), $options);
要传递选定的值,您需要将值传递给表单。
https://docs.moodle.org/dev/Form_API#Usage
$formdata = new \stdClass();
$formdata->master_id = 99
$mform = new edit_form();
$mform->set_data($formdata);
$mform->display();
我想将选项作为值传递:这是我的代码。
$master_id=array();
$ret1="select Id from m_tl_mastercourse";
$result1=get_records_sql($ret1,$limitfrom='', $limitnum='');
foreach($result1 as $resu){
$master_id[ ]=$resu->Id;
}
$mform->addElement('select', 'master_id', get_string('selectcourse'), $master_id);
如果我使用这意味着它如下所示:
<select id="id_master_id" name="master_id">
<option value="0">php01</option>
<option value="1">ios01</option>
<option value="2">and01</option>
<option value="3">java01</option>
<option value="4">python01</option>
<option value="5">yii2</option>
我想要的是确切的值将传递给选项值。如何获得
您将作为 $master_id[ ]=$resu->Id;
添加到数组中,默认情况下,它会为数组分配一个数字索引并为您提供下一个可用索引号。自己分配密钥如下:
$master_id[$resu->Id]=$resu->Id;
请注意,这假定您所有可能的选项都是唯一的。
您可以使用获取记录菜单功能简化此操作。
https://docs.moodle.org/dev/Data_manipulation_API#get_records_menu
$options = $DB->get_records_menu('m_tl_mastercourse', [], 'id', 'id, name');
$mform->addElement('select', 'master_id', get_string('selectcourse'), $options);
要传递选定的值,您需要将值传递给表单。
https://docs.moodle.org/dev/Form_API#Usage
$formdata = new \stdClass();
$formdata->master_id = 99
$mform = new edit_form();
$mform->set_data($formdata);
$mform->display();