0

テーブルをドラッグ アンド ドロップするための小さなスクリプトがあり、正常に動作しています。しかし、問題があります。開始/終了位置を BackingBean に渡す必要があります。jquery から (パラメーターを使用して) BackingBean 関数を呼び出す方法はありますか? または、何か良い回避策を知っていますか?

ドラッグ&ドロップのコード:

<script type="text/javascript" language="javascript">
$(document).ready(function() {
    var startPosition;
    var endPosition;
    $('#table tbody').sortable({
    cursor: "move",
    start:function(event, ui){
      startPosition = ui.item.prevAll().length;
    },
    update: function(event, ui) {
      endPosition = ui.item.prevAll().length;

      // Call BackingBean function

     }
    });
});
</script>
4

2 に答える 2

0

BackingBean はサーバー側です。できることは、backingbean コードで JavaScript 関数を呼び出し、もちろん関数を変更して開始位置と終了位置の両方を返すことです。

于 2012-11-09T17:12:42.200 に答える
0

次のように、xhtmlページに2つの非表示の入力フィールドを含めることができます

  <h:inputHidden id="input1" value="#{bean.startPosition}" /> // getters and setters for startPosition in your bean
  <h:inputHidden id="input2" value="#{bean.endPosition}" /> 

上記のJqueryスクリプトから取得した値をこれらのフィールドに設定します

   document.getElementById('form:input1').value=startPosition;
   document.getElementById('form:input2').value=endPosition;

それらをBeanに入れます。それはあなたの仕事をするはずです。

于 2012-11-09T17:23:40.240 に答える