2015-08-11 5 views
1

У меня есть moodle form. Внутри form я должен написать якорь . Моя форма выглядит следующим образом:Как написать якорный тег в форме moodle?

function definition() { 
    global $DB; 
    $mform =&$this->_form; 
    $mform->addElement('editor', 'question', 'Question'); 
    $mform->addRule('question', null, 'required', null, 'client'); 
    $mform->setType('question', PARAM_RAW); 

    //here I want an anchor tag 

    $this->add_action_buttons(false, 'SAVE'); 
} 

Я хочу написать anchor tag между текстовым редактором и кнопки в форме.

Я пишу якорный тег как

echo "<a href='/path/filename.txt' download='filename.txt'>filename.txt</a>"; 

, но это отображается в верхней части страницы. Я хочу, чтобы это anchor чуть ниже поля редактора. (Я могу поставить позицию абсолютной/относительной, но это делает некоторые проблемы стиля и не реагирует).

Здесь я использую этот тег anchor, чтобы загрузить файл.

Пожалуйста, помогите мне ... Моего MOODLE версии 2.9.1

ответ

3

Есть два способа вставки сырого HTML в форму Moodle, используя элемент «статический» или с использованием элемента «HTML».

Если вы хотите меченого ссылку, а затем использовать «статический» элемент:

$linkcontent = '<a href="/path/filename.txt">filename.txt</a>'; 
$mform->addElement('static', 'mylink', get_string('mylink', 'myplugin'), $linkcontent); 

Если вы просто хотите, чтобы поставить некоторые произвольное содержимое HTML в виде:

$linkcontent = '<a href="/path/filename.txt">filename.txt</a>'; 
$mform->addElement('html', $linkcontent); 

Примечания: ' mylink '- это просто произвольное имя, чтобы ссылаться на статический элемент - на самом деле не имеет значения, на что он вызван, но лучше всего сделать его уникальным (я столкнулся с проблемами до того, как оставил этот пробел или имел дубликаты). Часть get_string должна маркировать элемент таким же образом, как и другие элементы формы (если вам не нужна метка, а затем используйте версию «html»).

+0

большое спасибо, davosmith. Работает.. :) – next2u

Смежные вопросы