将回调附加到由 JSF 生成的 html - Primefaces
Attaching a callback to html generated by JSF - Primefaces
我有一个Primefaces命令按钮,我需要在document.ready上的jQuery中添加一个回调。 基本上我一直在尝试做的是获取对现有函数的引用,然后在我编写的新函数中调用它:
var existingFunction = jQuery("[id~='submit']").live("click");
jQuery("[id~='submit']").live("click", function(){
existingFunction();
alert('test');
updateControlPanel(buildControlPanelUrl(getUrlVars()));
});
这对我来说似乎很简单,但由于某种原因,这行不通。 当我加载页面并单击提交按钮时,它甚至没有到达警报。
我已经检查了错误控制台,发现它抛出了以下错误:
((f.event.special[s.origType] || {}).handle || s.handler).apply is not a function
页面上有我没有编写的现有 jQuery 函数,但我想确保此错误与我处理这个错误的方式无关。
我正在使用旧版本的 JQuery(1.3 或 1.4)的 tomcat 6 。
谢谢,如果你们需要更多信息,请告诉我。
编辑
我举了一个我试图在 JS Fiddle 上做的事情的例子:http://jsfiddle.net/anSXH/2/
以下是一些进一步的澄清:我已经使用最新的Primefaces组件库在JSF 2.0(MyFaces)中将按钮构建为一个项目。然后,我拿起了这个按钮并将其嵌入到现有的网页中。 该按钮提交表单,然后调用 JavaScript 函数以在 ajax 请求完成后在页面上显示结果。 当我将按钮嵌入到页面上时,这一切都有效,但现在我需要在按钮调用函数后在客户端更新一些内容。 这就是为什么我正在考虑向现有的 onclick 函数添加回调。
作为旁注,因为我使用的是Primefaces,所以我可以附加一个JavaScript函数,以便在ajax请求完成后运行。 我的计划B是尝试访问此功能并以某种方式覆盖它。
编辑第 2 部分下面是从素数生成的控件:
<button
id="topsaveform:submittop"
name="topsaveform:submittop"
class="ui-button ui-widget ui-state-default ui-corner-all ui-button-text-only"
onclick="PrimeFaces.ab({source:'topsaveform:submittop',process:'topsaveform OEIMeasurementsTable',update:'errorMessages submittedPopup',onstart:function(cfg){jQuery('#loadingBar').show('fast');;},oncomplete:function(xhr,status,args){postSubmit();;}});return false;"
type="submit">
<span class="ui-button-text">Save</span>
</button>
您是否尝试过使原始函数die
(ref)?
jQuery("[id~='submit']").die("click");
jQuery("[id~='submit']").live("click", function(){
alert('test');
updateControlPanel(buildControlPanelUrl(getUrlVars()));
});
问题是我试图用一个素数按钮来做到这一点。 当我切换到标准 JSF 按钮时,我能够将该功能附加到它上面没有问题。
- 可以't让我的if语句处理js中的html表单输入
- 如何设置html元素填充的动画
- 使用JS如何动态更改显示的html文件中的文本背景颜色
- 如何将HTML id分配给元素,以及如何将JavaScript应用于元素
- 如何编写HTML输入的JS内联
- Dojo不解析自定义小部件的模板html中的小部件声明性
- 使用javascript将动态表从一个html页面打印到另一个html页
- 通过javascript重定向html传递php变量
- 如何使Javascript动态html表及其上的事件
- 在chrome.tabs.onCreated之后加载HTML页面
- 如何在vs2002中调试html页面
- 如何使用javascript或html下载PDF格式的填写表单
- 视频HTML没有'无法在Internet Explorer 11上工作
- HTML表单提交时未执行外部函数
- 如何将输入(type=text)从html表单传递到javascript函数
- 使用angular重定向到html页面
- 分析高度属性时出现意外值{{specs.height}}.index.html
- 将回调附加到由 JSF 生成的 html - Primefaces
- 素Html文件中的Primefaces组件使用
- HTML和JSF PrimeFaces -为什么onClick存在时actionListener不执行