我有几双的按钮&我的页面上的复选框(此考试中前两个参数的组合,每个按钮都有'登录'和'基础'唯一
<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('login','basics',' true ')”一旦复选框勾选?onclick="run_through_ajax('login','basics','true')"
至onclick =“run_through_ajax('登录','基本','错误')”一旦复选框未勾选 < / LI>
我可以使用jQuery,不必是纯粹的javascript解决方案。
每个“运行”按钮都会运行带有不同参数的javascript。该复选框用于区分是否需要在run
之前执行一项额外操作。
答案 0 :(得分: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/
此处唯一的依赖是您要切换参数的按钮是页面中的上一个按钮元素。