Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/421.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Ajax和JSF 1.1使用带;委托书表格;,您对这一发展战略有何看法?_Javascript_Forms_Jsf_Iframe - Fatal编程技术网

Javascript Ajax和JSF 1.1使用带;委托书表格;,您对这一发展战略有何看法?

Javascript Ajax和JSF 1.1使用带;委托书表格;,您对这一发展战略有何看法?,javascript,forms,jsf,iframe,Javascript,Forms,Jsf,Iframe,目前我正在使用1.1规范,所以我试图简化对我来说太复杂的东西:p、使用冲突的导航规则管理支持bean、外部参数破坏规则等等。。。例如,当我需要一个由其他“视图”使用的支持bean时,我只是在其他支持bean中使用FacesContext来调用它,但通常它与JSF导航/初始化规则联系得太紧密,无法真正使用,当然,越简单越好,成为FacesContext 因此,只需使用一点跨浏览器Javascript(简单的表单副本和对“代理”表单的读写),我就可以在主用户页面中创建一种代理表单(完全与JSF导航规

目前我正在使用1.1规范,所以我试图简化对我来说太复杂的东西:p、使用冲突的导航规则管理支持bean、外部参数破坏规则等等。。。例如,当我需要一个由其他“视图”使用的支持bean时,我只是在其他支持bean中使用FacesContext来调用它,但通常它与JSF导航/初始化规则联系得太紧密,无法真正使用,当然,越简单越好,成为FacesContext

因此,只需使用一点跨浏览器Javascript(简单的表单副本和对“代理”表单的读写),我就可以在主用户页面中创建一种代理表单(完全与JSF导航规则无关,但使用JSF标记库)。Ajax在用户交互方面给了我灵活性,但数据总是由JSF管理

实际上,我要求所有“虚构”的用户操作都隐藏在一个“iframe”中,这个“iframe”根据JSF规则构建所有需要的表单,然后javascript简单地克隆其表单输出并将其放入用户视图级别(CSS用于显示/隐藏真实的命令按钮并使其变得漂亮),用户四处游荡,当他单击submit时,一个脚本复制所有内容将“代理”表单值放入调用表单实际提交的“iframe”中的实际JSF表单中,它返回的内容显然取决于您的选择

现在JSF真的是一种荣幸:-p


我真正感兴趣的是,了解您在使用纯Ajax和JSF 1.1时的替代策略是什么,而不采用ajax4jsf等中间层,这些都是不错的选择,但“插件”太多“比规范更重要。

我的建议是,您可以看看外面的Javascript框架,例如Prototype或JQuery。它们具有允许您序列化表单数据并使用Ajax将其发送到服务器的功能。然后你可以得到答案,并显示在网页上。看看Prototype的Form.serialize和Ajax.Updater。我认为这是一种比使用“代理”iframe和forms更干净的方法

假设您有一个表单,并希望将其发送到服务器,然后用服务器上的HTML片段替换该表单。这是使用Prototype实现的一种方法:

new Ajax.Updater('divThatWrapsTheFormTag', 'someUrl', {
  parameters: Form.serialize('formId')
});

是的,这是一个想法,我在.NET/CFM/PHP中为其他纯web项目使用jQuery,但对于JSF,我选择了Yahoo Javascript库YUI