我需要获取元素名称(即光标所在的文本区域名称),并将名称传递给服务器,然后当它返回时,我需要通过 url 来锚定到元素的位置。
每个文本/文本区域都在表单中定义了自己的锚名称,我需要在表单提交或对表单执行任何操作之前知道光标的位置,或者当表单刷新时,我需要参考最后编辑的元素。
注意:我在表单中使用 jsp/struts 标签
请提供您对此的建议,作为我如何实现这一目标。我很紧急。
提前致谢。
我需要获取元素名称(即光标所在的文本区域名称),并将名称传递给服务器,然后当它返回时,我需要通过 url 来锚定到元素的位置。
每个文本/文本区域都在表单中定义了自己的锚名称,我需要在表单提交或对表单执行任何操作之前知道光标的位置,或者当表单刷新时,我需要参考最后编辑的元素。
注意:我在表单中使用 jsp/struts 标签
请提供您对此的建议,作为我如何实现这一目标。我很紧急。
提前致谢。
onfocus、onclick 和 onchange 没有为我的文本区域识别/工作,因为我使用tinyMCE作为 RTE 功能。
请让我知道可以为我的文本区域提供此功能的任何替代方案。
尝试这样的事情:
<input type="hidden" id="lastedited" value="" />
然后对于每个文本区域:
<textarea id="field2"
onfocus="document.forms[0].lastedited=this.id">blah</textarea>
这将使用光标所在的最后一个文本区域的 id 设置隐藏字段,并将该隐藏字段传递给服务器。
我不认为你有 JQuery 运行......如果你这样做了,上面的 Javascript 可以稍微简化。
编辑:TinyMCE Editor 实例有自己的 OnChange 事件,您可以为其添加处理程序,如下所示:
var ed = new tinymce.Editor('textareaid', { blah blah blah });
ed.onChange.add(function(ed, e) { document.forms[0].lastedited=ed.getElement().id });
在这种情况下,OnChange 是最好的事件,因为 TinyMCE 没有 onfocus/onblur 事件,并且 tabbing 进入编辑器不会导致 OnClick。