0

構文で選択した関数を呼び出すボタンを追加できます

JToolBarHelper::custom('functionIWant', ... );

ただし、その関数と一緒にパラメーターを渡すことは可能ですか? 私はもう試した:

JToolBarHelper::custom('functionIWant(0)' ... );

うまくいきませんでした。

<input>3 つのボタンのそれぞれに異なるパラメーターが必要なため、 非表示をハードコーディングするだけでは役に立ちません。

現在、各ボタンは異なる関数を呼び出しますが、その 3 つすべてが同じことを行います。コードサイズを縮小しようとしています。パラメーターを渡す方法はありますか (custom宣言内の関数を呼び出すか、JS とsetVar()操作のいずれかを介して)。それ以外の場合は、3 つのドライバー関数を作成し、それらを使用して 1 つの中央関数を呼び出す必要がありますか?

4

1 に答える 1

0

このようなボタンを作成します

JToolBarHelper::custom('button1', ... );
JToolBarHelper::custom('button2', ... );
JToolBarHelper::custom('button3', ... );

次に、関数をフォームに添付します

<form name='myform' onsubmit='callme()'>

</form>

次に、フィールドを作成し、押されたボタンに基づいてその値を設定します。

<script>

function callme()
{
 var taskval  = document.getElementById('task');
  var form = document.forms['myForm'];
  var el = document.createElement("input");
   el.type = "hidden";
   el.name = "myHiddenField";


 if (taskval=='button1')
   {

   el.value = "myValue1";

   }
 else if ((taskval=='button2')
  {
        el.value = "myValue2";

  }
  else
  {
     el.value = "myValue3";

   }
 form.appendChild(el);  
  document.getElementById('task').value = "functionIWanToCall";

  return true;

}

</script>
于 2012-08-24T15:33:22.207 に答える