Плагин CKEditor на основе фрейма и как вернуть значение радио

#ckeditor

#ckeditor

Вопрос:

Я создал плагин на основе iframe для CKEditor, используя CKEDITOR.dialog.addIframe, и хочу, чтобы пользователь выбрал значение radio, которое будет возвращено в редактор. Я использую приведенный ниже код, чтобы попытаться вернуть значение.

 <form name="form1">
    <label><input type="radio" name="field_name" value="[value one]" id="field_name_0" onclick="return get_radio_value()" />value one</label><br />
    <label><input type="radio" name="field_name" value="[value two]" id="field_name_1" onclick="return get_radio_value()" />value two</label><br />
    <label><input type="radio" name="field_name" value="[value three]" id="field_name_2" onclick="return get_radio_value()" />value three</label><br />
</form>
<script language="javascript">
function get_radio_value()
{
    for (var i=0; i < document.form1.field_name.length; i  )
    {
        if (document.form1.field_name[i].checked)
        {
            var rad_val = document.form1.field_name[i].value;
            //alert(rad_val); //this works using onclick
        }
    }
}

var CKEDITOR = window.parent.CKEDITOR;

var okListener = function(ev) {
   this._.editor.insertHtml('<div class="custom_form">' rad_val '</div>');
   CKEDITOR.dialog.getCurrent().removeListener("ok", okListener);
};

CKEDITOR.dialog.getCurrent().on("ok", okListener);
</script>
  

Я также попробовал простой:

 var form_value = document.form1.field_name.value;
this._.editor.insertHtml('<div class="custom_form">' form_value '</div>');
  

но это вернуло «неопределенный»

Любая помощь или идеи будут оценены?

Примечание: значения полей формы динамически создаются с помощью PHP и передаются из базы данных MySQL.

Комментарии:

1. Я нашел грязное исправление этого, добавив скрытое поле в форму с именем «field2» и изменив функцию get_radio_value, чтобы включить это: var rad_val = document.forms.form_name[i].value; document.forms.field2.value = rad_val;