繁体   English   中英

如何在JSF 2.0中为单击操作设置两个ajax事件

[英]How to set two ajax event for one click action in JSF 2.0

我必须实现一个场景,例如要更改图像并相应显示文本。 意味着同时包含两个ajax ...所以我正在编写这样的代码,但是图像正在更改并且正在工作,但文本无法显示。 刷新该页面后即出现TEXT,即替换了Text,但未显示..... 代码为:

<h:commandLink class="SampleImageCSS">
            <h:graphicImage id="sample2" alt="No iamge to display"
                value="#{carDetails.carUrl2}" height="100" width="100"
                title="Car For Beeding" />
            <f:setPropertyActionListener target="#{carDetails.rootImage}"
                value="#{carDetails.carUrl2}" />
                <f:setPropertyActionListener target="#{carDetails.view}" 
                value="#{carDetails.viewDetails['carUrl2']}" />
            <f:ajax event="action" render="rootImage">
            </f:ajax>
            <f:ajax event="action" render="ViewId">
            </f:ajax>
        </h:commandLink>

如何触发ajax请求同时执行两项工作? 菜豆:

public class CarDetails {

  private int id;
  private String carUrl1;
  private String carUrl2;
  private String carUrl3;
  private String carUrl4;
  private String carUrl5;
  private String carUrl6;
  private String view;
  public String getView() {
    return view;
}
public void setView(String view) {
    this.view = view;
}
  HashMap<String, String> viewDetails = new HashMap<String, String>();

  public HashMap<String, String> getViewDetails() {
    return viewDetails;
}
public void setViewDetails(HashMap<String, String> viewDetails) {
    this.viewDetails = viewDetails;
}
//other getter setter
public CarDetails(){
  carUrl1="http://www.screamingtiger.com/images/car1.jpg";
  carUrl2="http://www.allbestwallpapers.com/tagwallpaper/convertible%20car-wallpapers.jpg";
  carUrl3="http://media.treehugger.com/assets/images/2011/10/ec-rnd-005.jpg";
  carUrl4="http://www.urbadriver.com/wp-content/uploads/2010/12/car.jpg";
  carUrl5="http://www.businessfinancemag.info/wp-content/uploads/2011/01/car_loans.jpg";
  carUrl6="http://cars-wallpapers.eu/images/Old_cars/00000018.jpg";
  rootImage="http://www.screamingtiger.com/images/car1.jpg";

  viewDetails.put("carUrl1", "Front view");
  viewDetails.put("carUrl2", "Right Side View");
  viewDetails.put("carUrl3", "Top or Plan View");
  viewDetails.put("carUrl4", "Rear view");
  viewDetails.put("carUrl5", "Back view");
  viewDetails.put("carUrl6", "Bottom View");}}

一些谷歌得到它后简单的...

通过编写类似<f:ajax event="action" render="rootImage ViewId">而不是两个单独的ajax请求来解决此问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM