1

ユーザーが「はい」を選択した場合に確認ダイアログを表示する jquery ファイルがあります。jsf からメソッドを呼び出す必要があります。

それは、jquery で jsf マネージド Bean を呼び出す必要がある場所です。

 jConfirm('item '+ui.item.context.id+'you want continu ?', 'alerte', function(r) {     
                  if(r)          
                  {
              // i want to call the addmember methode here
             addmember(ui.sender.attr('id'));// i need the right way to call it this is wrong way
                   }
                    else
                    {
                    $(ui.sender).sortable('cancel'); // refuse element to be dropped
                    }

そしてjsfマネージドBean「Managedbeanmembers」には次のものがあります:

void addmember(String name)
{
  listmembers.add(name);
}

編集1:

今回は、必要なものをより明確に説明できるように努めます。

私は値を取得してデータベースに挿入するjsfマネージドBeanのメソッドを持っています:

    public void exec() {
    FacesContext context = FacesContext.getCurrentInstance();
    Map map = context.getExternalContext().getRequestParameterMap();
    String name1 = (String) map.get("name1");
    String name2 = (String) map.get("name2");

    manageTesttable.persist(name1);   
}

Jsfでは、次のように含めます:

 <p:remoteCommand name="remoteCommandFunctionName"   
                  actionListener="#{gestionduplanning.exec()}"/>

そして私のJavascriptファイルで:

jConfirm('item '+ui.item.context.id+' capacite Cuisson epuise vous voulez continue comme meme ?', 'alerte', function(r) {     
                  if(r)          
                  { 

                  remoteCommandFunctionName({name1:'value1', name2:'value2'});

                   }
                    else
                    {
                    $(ui.sender).sortable('cancel'); // refuse element to be dropped
                    }

しかし、挿入するとnull値が発生するのはなぜname1とname2がnullなのですか??

4

1 に答える 1

1

1つの可能性-非表示のボタンを作成し、@ SJuan76が提案したようにクリックします-これがです。

別の可能性 - リッチフェイスを使用している場合は、こちらjsFunctionを参照してください。

編集: Primefaces の場合 -p:remoteCommand同様の機能を提供しています。

于 2013-05-28T10:15:12.363 に答える