我有一个刻在模态中的表单,其中有一个隐藏的输入
<input type="hidden" name="transType" id="transType" value="">
有两个按钮可以打开表单
<a href="" id="Buy" class="trigger">Buy</a>
<a href="" id="Sell" class="trigger">Sell</a>
我想根据点击的按钮设置输入#transType值,再次将表单加载到模态中并在单击按钮时打开
$(function(){
$('.trigger').click(function(e){
//modal stuff, good to go
var link = $(this).attr('href');
$.get(link, function(data){
modal.open({content: data});
//here is where I need to set the val
if ($(this).attr('id') == 'Buy')) {
$('#transType').val('Buy');
} else if ($(this).attr('id') == 'Sell')) {
$('#transType').val('Sell');
}
});
e.preventDefault();
});
});
我让它使用2个单独的点击处理程序,每个按钮一个并设置值,但是想要一个覆盖两个按钮的更干净的功能。如何根据按钮(同一类)的ID切换隐藏输入的值?
解 感谢帮助人员,让它工作。不得不改变功能的构造,我没有确定这个&#39;这个&#39;正确。这是最终的解决方案,以防任何人遇到这种情况。
$(function(){
$('.trigger').click(function(e){
var link = $(this).attr('href');
if($(this).attr('id') == 'Buy') {
$.get(link, function(data){
modal.open({content: data});
$('#transType').val('buy');
});
}
if($(this).attr('id') == 'Sell') {
$.get(link, function(data){
modal.open({content: data});
$('#transType').val('sell');
});
}
e.preventDefault();
});
});
答案 0 :(得分:1)
Here's a fiddle for you,隐藏的输入字段(使其显示可见)将始终具有id的值!
<强>代码:强>
的 Jquery的:强>
$('.trigger').click(function(e){
$('#transType').val($(this).attr('id'));
});
<强> HTML:强>
<input type="text" name="transType" id="transType" value="">
<a href="#" id="Buy" class="trigger">Buy</a>
<a href="#" id="Sell" class="trigger">Sell</a>
<强>旁注:强>
如果你想要支票/不同价值,你可能想要这样做(但我没有理由这样做)
$('.trigger').click(function(e){
if($(this).attr('id') == 'Buy') {
$('#transType').val($(this).attr('id'));
}
else if($(this).attr('id') == 'Sell') {
$('#transType').val($(this).attr('id'));
}
else if ($(this).attr('id') == 'test') {
$('#transType').val($(this).attr('id'));
}
});
答案 1 :(得分:0)
我希望你在寻找这个如果我没错! 替换&GT;&GT;
if ($(this).attr('id') == 'Buy')) {
$('#transType').val('Buy');
} else if ($(this).attr('id') == 'Sell')) {
$('#transType').val('Sell');
}
使用&GT;&GT;
$('#transType').val($(this).attr('id'));