嵌套函数的Javascript if-else语句

时间:2017-09-05 19:46:23

标签: javascript

我有一个隐藏行的javascript函数,根据点击的按钮,它会显示内容,具体取决于它是否与表格行匹配

$("#example").on("click", function()
{
    var $rowsNo = $("#table tbody tr").hide().filter(function () {
    return $.trim($(this).find("td").eq(0).text()) === "4"
}).show();
});

这很好用。但我想添加一个if语句,如果它等于4显示内容,如果它不等于4,显示内容为5.我试过了

$("#example").on("click", function()
{

    if ($(this).find("td").eq(0).text()) === "4"){
    var $rowsNo = $("#table tbody tr").hide().filter(function () {
    return $.trim($(this).find("td").eq(0).text()) === "4"
}).show();
}
else{
    var $rowsNo = $("#table tbody tr").hide().filter(function () {
    return $.trim($(this).find("td").eq(0).text()) === "5"
}).show();

}
});

我收到错误

Uncaught SyntaxError: Unexpected token ===

1 个答案:

答案 0 :(得分:0)

if语句中有一个额外的')'。这个版本应该有效:

$("#example").on("click", function() {
  if (
    $(this)
      .find("td")
      .eq(0)
      .text() === "4"
  ) {
    var $rowsNo = $("#table tbody tr")
      .hide()
      .filter(function() {
        return (
          $.trim(
            $(this)
              .find("td")
              .eq(0)
              .text()
          ) === "4"
        );
      })
      .show();
  } else {
    var $rowsNo = $("#table tbody tr")
      .hide()
      .filter(function() {
        return (
          $.trim(
            $(this)
              .find("td")
              .eq(0)
              .text()
          ) === "5"
        );
      })
      .show();
  }
});