mirror of
https://github.com/moodle/moodle.git
synced 2025-04-13 12:32:08 +02:00
MDL-65217 form: option to randomise element ids
This commit is contained in:
parent
521989ec56
commit
f82c9d8d06
@ -163,6 +163,8 @@ abstract class moodleform {
|
||||
* @param string $target target frame for form submission. You will rarely use this. Don't use
|
||||
* it if you don't need to as the target attribute is deprecated in xhtml strict.
|
||||
* @param mixed $attributes you can pass a string of html attributes here or an array.
|
||||
* Special attribute 'data-random-ids' will randomise generated elements ids. This
|
||||
* is necessary when there are several forms on the same page.
|
||||
* @param bool $editable
|
||||
* @param array $ajaxformdata Forms submitted via ajax, must pass their data here, instead of relying on _GET and _POST.
|
||||
*/
|
||||
|
@ -384,6 +384,10 @@ class HTML_QuickForm_element extends HTML_Common
|
||||
switch ($event) {
|
||||
case 'createElement':
|
||||
static::__construct($arg[0], $arg[1], $arg[2], $arg[3], $arg[4]);
|
||||
if ($caller->getAttribute('data-random-ids') && !$this->getAttribute('id')) {
|
||||
$this->_generateId();
|
||||
$this->updateAttributes(array('id' => $this->getAttribute('id') . '_' . random_string()));
|
||||
}
|
||||
break;
|
||||
case 'addElement':
|
||||
$this->onQuickFormEvent('createElement', $arg, $caller);
|
||||
|
Loading…
x
Reference in New Issue
Block a user