Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 根据单击的按钮以模态形式设置隐藏输入_Javascript_Jquery_Forms - Fatal编程技术网

Javascript 根据单击的按钮以模态形式设置隐藏输入

Javascript 根据单击的按钮以模态形式设置隐藏输入,javascript,jquery,forms,Javascript,Jquery,Forms,我有一个形式,它被分解成一个模态,里面有一个隐藏的输入 <input type="hidden" name="transType" id="transType" value=""> 我有两个独立的点击处理程序,每个按钮一个,并以这种方式设置值,但希望有一个更干净的功能,涵盖两个按钮。如何根据按钮的ID(同一类)切换隐藏输入的值 解决方案 谢谢你们的帮助,让它工作起来了。必须改变函数的结构,我没有正确地定义“this”。这是最后的解决方案,以防有人遇到这种情况 $(function(

我有一个形式,它被分解成一个模态,里面有一个隐藏的输入

<input type="hidden" name="transType" id="transType" value="">
我有两个独立的点击处理程序,每个按钮一个,并以这种方式设置值,但希望有一个更干净的功能,涵盖两个按钮。如何根据按钮的ID(同一类)切换隐藏输入的值

解决方案 谢谢你们的帮助,让它工作起来了。必须改变函数的结构,我没有正确地定义“this”。这是最后的解决方案,以防有人遇到这种情况

$(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();
    });
});

我希望你正在寻找这个,如果我没有错!!! 替换>>

if ($(this).attr('id') == 'Buy')) {
$('#transType').val('Buy');
} else if ($(this).attr('id') == 'Sell')) {
$('#transType').val('Sell');
}
与>>

$('#transType').val($(this).attr('id'));
,隐藏的输入字段(显示时可见)将始终具有id的值

代码:
Jquery:

$('.trigger').click(function(e){
  $('#transType').val($(this).attr('id'));        
});
<input type="text" name="transType" id="transType" value="">


<a href="#" id="Buy" class="trigger">Buy</a>
<a href="#" id="Sell" class="trigger">Sell</a>
HTML:

$('.trigger').click(function(e){
  $('#transType').val($(this).attr('id'));        
});
<input type="text" name="transType" id="transType" value="">


<a href="#" id="Buy" class="trigger">Buy</a>
<a href="#" id="Sell" class="trigger">Sell</a>

没有,没有设置值。我想修复我所拥有的,因为ID可能与我希望输入的值不匹配。我需要能够设置隐藏的输入值的基础上的按钮,点击它的作品,谢谢你。但是,按钮ID可能并不总是与隐藏输入的所需值匹配。这就是为什么我试着用ID设置它,用一个我可以更改的值。所以你只使用两个if语句,而不是if/else?对不起,编辑了答案,这就是我的意思。我认为第二个选项是不必要的,如果您只想通过idso进行更改,那么我希望它这样做,如果($(this).attr('id')='Sell'){$('#transType')).val('something');}我唯一能让它工作的方法是为每个按钮使用一个单独的函数并显式设置值。倒霉。
 $('.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')); 
    }
});