0

我有一个我似乎无法弄清楚的问题。我正在使用 jHtmlArea 0.8 和 jQuery v3.2.1。我创建了一个带有 TEXTAREA 的对话框,我正在使用 jHTMLArea 将其转换为 HTML 编辑区域。

我的问题是 HTMLArea 似乎已创建,但它并没有真正给我一个编辑区域。我已经搜索过是否有办法控制高度,但是根据我在源代码中看到的,HTMLArea 的高度应该与 textarea 的大小相匹配。我检查了我的 css,但找不到任何可能导致这种情况的东西。

我已经在http://issuesnj.com/sample/在线发布了该页面的简化版本(所有自定义代码都是内联的) 。只需单击 + 按钮,您应该会看到问题。对于这方面的任何帮助,我将不胜感激。

此处的操作代码是对话框 HTML 定义和 JavaScript。他们来了:

<div id="divEdit">
    <table>
        <tr>
            <td>Page Name</td>
            <td><input name="pageName" id="pageName" style="width:400px" type="text"></td>
        </tr>
        <tr>
            <td>Page Title (shows on the tab)</td>
            <td><input name="pageTitle" id="pageTitle" style="width:400px" type="text"></td>
        </tr>
        <tr>
            <td>Page Caption</td>
            <td><input name="pageCaption" id="pageCaption" style="width:400px" type="text"></td>
        </tr>
        <tr>
            <td>After upload URL</td>
            <td><input name="afterProcView" id="afterProcView" style="width:400px" type="text"></td>
        </tr>
        <tr>
            <td colspan="2"><br>Page Text:</td>
        </tr>
        <tr>
            <td colspan="2"><textarea name="pageText" id="pageText" rows="20" style="width: 700px;"></textarea></td>
        </tr>   
    </table>
</div>

这是对话框的 javascript 和具有 htmlarea 调用的 fnAdd 函数...

$(document).ready(function(){
    $("#divEdit").dialog({
        "autoOpen": false,
        "width": "auto",
        "title": "Page Settings",
        "open": function (evt, ui) {
            $("#pageText").htmlarea();
        },
        "buttons": 
        [
            {"text": "Save",
             "click": function(){$("#divEdit").dialog("close");}
            },
            {"text": "Cancel",
             "click": function(){$("#divEdit").dialog("close");}
            }
        ]
    });
});

function fnAdd(){
    $("#id").val("New");
    $("#pageName").val("");
    $("#pageTitle").val("");
    $("#pageCaption").val("");
    $("#pageText").htmlarea('html', '\b');
    $("#afterProcView").val("");
    $("#divEdit").dialog("open");
}

提前致谢!

4

2 回答 2

0

好的。尽管我还有一个新问题(我想我将单独发布),但我对此有一个答案...

问题是我只有一次 htmlarea() (在编辑期间)。我需要在文档就绪函数中初始化 htmlarea。因此,修改后的代码如下所示:

$(document).ready(function(){
    $("#pageText").htmlarea();

    $("#divEdit").dialog({
        "autoOpen": false,
        "width": "auto",
        "title": "Page Settings",
        "open": function (evt, ui) {
            $("#pageText").htmlarea();
        },
        "buttons": 
        [
            {"text": "Save",
             "click": function(){$("#divEdit").dialog("close");}
            },
            {"text": "Cancel",
             "click": function(){$("#divEdit").dialog("close");}
            }
        ]
    });
});

一旦我添加了通用的 htmlalrea 调用,它的大小就合适了。至于其余的,那将是另一个问题的主题。

于 2017-12-04T15:27:59.823 回答
0

检查代码后,请注意<iframe style="height: 0px; width: 700px;"></iframe>. 将高度更改为您想要的任何高度,它应该可以工作。如果您使用 jQuery,也可以通过指定 CSS 规则来修复。i如果您可以发布一些代码,我们可以使用它。

于 2017-12-01T17:16:34.843 回答