如何在 TWebBrowser 中使用 Tinymce 从 TextArea 获取修改后的值 (Delphi)

How can I get a modified value from a TextArea with Tinymce in TWebBrowser (Delphi)

在我的 Delphi 应用程序中,我有一个 TWebDocument 加载带有 TextArea 的文档。

文档内容如下:

<!DOCTYPE html>
<html>
<head>
  <meta http-equiv="X-UA-Compatible" content="IE=edge" />
  <script src="file://c:/projects/tinymce/tinymce.min.js" referrerpolicy="origin"></script>
  <script>tinymce.init({selector:'textarea'});</script>
</head>
<body>
  <textarea id="texto">TEXT HERE</textarea>
</body>
</html>

我可以用下面的代码获取textarea中的文字:

Element := (wb1.Document as IHTMLDocument3).getElementById('texto');
Edit1.Text := Element.Value;

但是如果用户在运行时修改了textarea中的文本呢?如何获取修改后的值?

编辑:这是因为 tinyMCE 脚本。所以真正的问题是如果 tinyMCE 处于活动状态,如何从 TWebBrowser 中的 TextArea 获取值。

好吧,回答我自己的问题: 我将 tinymce.init 更改为:

  tinymce.init({
    selector:'textarea',
    setup: function (editor) {
        editor.on('change', function () {
            tinymce.triggerSave();
        })
    }
  });