2011-05-31 110 views
0

我喜歡在我的頁面(組合的前兩個參數在此examole它的「登錄」 &「基礎知識」的按鈕&複選框幾雙獨特每個按鈕(可以勾選複選框更新javascript函數調用參數?

<button class="square_button button_background" type="button" 
      onclick="run_through_ajax('login','basics','false')"> run </button> 
<input name="restore" title="restore before ant run" type="checkbox"> 

我可以採用某種

  • 更新onclick="run_through_ajax('login','basics','false')"到的onclick =「run_through_ajax( '登錄', '基礎',」 TR UE「)」一旦複選框勾選
  • 更新onclick="run_through_ajax('login','basics','true')"到的onclick =「run_through_ajax(‘登錄’,‘基本’,‘’)」,一旦複選框取消勾選
  • 我可以實現這一而不引入ID的每單按鈕?我可以在div中包裝/分組按鈕和複選框,所以我知道要更新什麼?

我可以使用jQuery,並不一定是純JavaScript的解決方案。

每個「運行」按鈕運行具有不同參數的JavaScript。該複選框用於區分是否需要在run之前執行一個額外操作。 enter image description here

回答

1

怎麼回合呢?

HTML

<input type="hidden" value="login|basic"></input> 
<button class="square_button button_background" type="button"> run </button> 
<input name="restore" title="restore before ant run" type="checkbox"> 
<input type="hidden" value="test|advanced"></input> 
<button class="square_button button_background" type="button"> run </button> 
<input name="restore" title="restore before ant run" type="checkbox"> 
<input type="hidden" value="login|basic"></input> 
<button class="square_button button_background" type="button"> run </button> 
<input name="restore" title="restore before ant run" type="checkbox"> 

的Javascript

function run_through_ajax(p1, p2, p3) 
{ 
    console.log('p1: '+p1+', p2: '+p2+', p3: '+p3); 
} 

$(document).ready(function(){ 
    $('button[type=button]').click(function(e){ 
     var params = $(this).prev('input[type=hidden]').val(); 
     run_through_ajax(params.split('|')[0], params.split('|')[1], false); 
    }); 
}); 

$('input[type=checkbox]').click(function(e){ 
    $(this).prev('button').unbind('click'); 
    $(this).prev('button').click(function(){ 
     var params = $(this).prev('input[type=hidden]').val(); 
     run_through_ajax(params.split('|')[0], params.split('|')[1], e.currentTarget.checked); 
    }); 
}); 

http://jsfiddle.net/dbrecht/jpySU/

這裏唯一的依賴是要切換參數的按鈕是以前的按鈕元素在頁面中。

+0

這將是我想要的東西,如果'onclick'存在於每個按鈕... – Radek 2011-05-31 02:42:55

+0

是否有一個原因,爲什麼* *你想要的'onclick'呢?如果有一個實際的* need *,你可以在通過jQuery綁定之前刪除按鈕的'onclick'屬性。 – 2011-05-31 02:45:24

+0

我更新了我的問題。圖片,希望解釋很多+圖片上方的兩個句子。 – Radek 2011-05-31 02:55:49

相關問題