[英]Change table value using jquery
I am trying to change the value of an td
value with the button that is clicked.. I have tried a couple of ways but none have worked. 我试图用点击的按钮更改td
值的值。我尝试了几种方法,但没有一种方法有效。 If user click Show USD
button column show only USD
values, If user click GBP
column should show GBP
values. 如果用户单击Show USD
按钮列仅显示USD
值,如果用户单击GBP
列应显示GBP
值。 I don't know this this is correct way to do this. 我不知道这是正确的方法。 Any help highly appreciated. 任何帮助高度赞赏。
$('.btn-usd').on('click', function(){ $("cu-usd").removeClass(hide); $("cu-gbp").addClass(hide); }); $('.btn-gbp').on('click', function(){ $("cu-gbp").removeClass(hide); $("cu-usd").addClass(hide); });
.hide { display: none; }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <div class="btn-usd">show USD</div> <div class="btn-gbp">show GBP</div> <table> <tbody> <tr> <td> <div class="cu-usd">$10</div> <div class="cu-gbp">£7.10</div> </td> <td> <div class="cu-usd">$20</div> <div class="cu-gbp">£14.20</div> </td> <td> <div class="cu-usd">$30</div> <div class="cu-gbp">£21.30</div> </td> <td> <div class="cu-usd">$40</div> <div class="cu-gbp">£28.10</div> </td> </tr> </tbody> </table> <table> <tbody> <tr> <td> <div class="cu-usd">$100</div> <div class="cu-gbp">£70.10</div> </td> <td> <div class="cu-usd">$200</div> <div class="cu-gbp">£140.20</div> </td> <td> <div class="cu-usd">$300</div> <div class="cu-gbp">£210.30</div> </td> <td> <div class="cu-usd">$400</div> <div class="cu-gbp">£280.10</div> </td> </tr> </tbody> </table>
There are 2 problems 有两个问题
.
类选择器以.
Following will work 以下将有效
$('.btn-usd').on('click', function(){
$(".cu-usd").removeClass("hide");
$(".cu-gbp").addClass("hide");
});
$('.btn-gbp').on('click', function(){
$(".cu-gbp").removeClass("hide");
$(".cu-usd").addClass("hide");
});
$(".cu-usd").removeClass('hide'); $(".cu-gbp").addClass('hide'); $('.btn-usd').on('click', function(){ $(".cu-usd").removeClass('hide'); $(".cu-gbp").addClass('hide'); }); $('.btn-gbp').on('click', function(){ $(".cu-gbp").removeClass('hide'); $(".cu-usd").addClass('hide'); });
.hide { display: none; }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <div class="btn-usd">show USD</div> <div class="btn-gbp">show GBP</div> <table> <tbody> <tr> <td><div class="cu-usd">$10</div><div class="cu-gbp">£7.10</div></td> <td><div class="cu-usd">$20</div><div class="cu-gbp">£14.20</div></td> <td><div class="cu-usd">$30</div><div class="cu-gbp">£21.30</div></td> <td><div class="cu-usd">$40</div><div class="cu-gbp">£28.10</div></td> </tr> </tbody> </table> <table> <tbody> <tr> <td><div class="cu-usd">$100</div><div class="cu-gbp">£70.10</div></td> <td><div class="cu-usd">$200</div><div class="cu-gbp">£140.20</div></td> <td><div class="cu-usd">$300</div><div class="cu-gbp">£210.30</div></td> <td><div class="cu-usd">$400</div><div class="cu-gbp">£280.10</div></td> </tr> </tbody> </table>
$('.btn-usd').on('click', function() { $(".cu-usd").removeClass('hide');//missing . $(".cu-gbp").addClass('hide');//missing . }); $('.btn-gbp').on('click', function() { $(".cu-gbp").removeClass('hide');//missing . $(".cu-usd").addClass('hide');//missing . });
.hide { display: none; }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <div class="btn-usd">show USD</div> <div class="btn-gbp">show GBP</div> <table> <tbody> <tr> <td> <div class="cu-usd">$10</div> <div class="cu-gbp">£7.10</div> </td> <td> <div class="cu-usd">$20</div> <div class="cu-gbp">£14.20</div> </td> <td> <div class="cu-usd">$30</div> <div class="cu-gbp">£21.30</div> </td> <td> <div class="cu-usd">$40</div> <div class="cu-gbp">£28.10</div> </td> </tr> </tbody> </table> <table> <tbody> <tr> <td> <div class="cu-usd">$100</div> <div class="cu-gbp">£70.10</div> </td> <td> <div class="cu-usd">$200</div> <div class="cu-gbp">£140.20</div> </td> <td> <div class="cu-usd">$300</div> <div class="cu-gbp">£210.30</div> </td> <td> <div class="cu-usd">$400</div> <div class="cu-gbp">£280.10</div> </td> </tr> </tbody> </table>
Missing .
失踪.
in class name 在班级名称
There are some problems with your code. 您的代码存在一些问题。
$('.btn-usd').on('click', function(){
$(".cu-usd").removeClass('hide');
$(".cu-gbp").addClass('hide');
});
$('.btn-gbp').on('click', function(){
$(".cu-gbp").removeClass('hide');
$(".cu-usd").addClass('hide');
});
Use .
使用.
operator for class element and wrap hide in quotes as it is passed as string. class元素的运算符和wrap在引号中隐藏,因为它作为字符串传递。
Also to optimize take out $(".cu-usd")
and $(".cu-gbp")
in variables. 还要优化在变量中取出$(".cu-usd")
和$(".cu-gbp")
。
You can also do it with .hide()
and .show()
and don't have to assign a class. 您也可以做到这一点.hide()
和.show()
并没有指定一个类。 The result is the same. 结果是一样的。
and as mentioned before missing .
并且如前所述.
in classname. 在classname中。 But I think that you know that by now. 但我想你现在已经知道了。
$('.btn-usd').on('click', function(){ $(".cu-usd").show(); $(".cu-gbp").hide(); }); $('.btn-gbp').on('click', function(){ $(".cu-gbp").show(); $(".cu-usd").hide(); });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <div class="btn-usd">show USD</div> <div class="btn-gbp">show GBP</div> <table> <tbody> <tr> <td><div class="cu-usd">$10</div><div class="cu-gbp">£7.10</div></td> <td><div class="cu-usd">$20</div><div class="cu-gbp">£14.20</div></td> <td><div class="cu-usd">$30</div><div class="cu-gbp">£21.30</div></td> <td><div class="cu-usd">$40</div><div class="cu-gbp">£28.10</div></td> </tr> </tbody> </table> <table> <tbody> <tr> <td><div class="cu-usd">$100</div><div class="cu-gbp">£70.10</div></td> <td><div class="cu-usd">$200</div><div class="cu-gbp">£140.20</div></td> <td><div class="cu-usd">$300</div><div class="cu-gbp">£210.30</div></td> <td><div class="cu-usd">$400</div><div class="cu-gbp">£280.10</div></td> </tr> </tbody> </table>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.