CKEditor плагин на основе iframe и как вернуть значение радио - PullRequest
1 голос
/ 11 октября 2011

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

<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>');

но это вернуло "undefined"

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

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...