单击下拉列表项时,是否在javascript中调用相同的列表项名称函数?

单击下拉列表项时,是否在javascript中调用相同的列表项名称函数?,javascript,jquery,Javascript,Jquery,下拉列表包含3项,即emp名称、产品信息、销售状态,当我单击列表项时,它应该调用相同的列表项名称。在这里,当我点击列表项时,我正在做的是,项名称空间移除并调用函数,但它没有调用。我该怎么办。下面是我试过的代码 html ---- <ul> <li class="item">emp name</li> <li class="item">prod info</li> <li class="item">sale status<

下拉列表包含3项,即emp名称、产品信息、销售状态,当我单击列表项时,它应该调用相同的列表项名称。在这里,当我点击列表项时,我正在做的是,项名称空间移除并调用函数,但它没有调用。我该怎么办。下面是我试过的代码

html
----
<ul>
<li class="item">emp name</li>
<li class="item">prod info</li>
<li class="item">sale status</li>
</ul>

javascript
----------
jQuery("ul .item").click(function(){
   var x = $(this).text();
   var y = x.replace(/\s+/g, '');
        y+();
});
function empname(){
  console.log("emp");
}
function prodinfo(){
   console.log("prodinfo");
}
function salestatus(){
  console.log("salesstaus");
}
html
----
    emp名称 产品信息 销售状态
javascript ---------- jQuery(“ul.item”)。单击(函数(){ var x=$(this.text(); 变量y=x.replace(/\s+/g',); y+(); }); 函数名(){ 控制台日志(“emp”); } 函数prodinfo(){ console.log(“prodinfo”); } 函数salestatus(){ console.log(“salesstaus”); }
您应该使用。
jQuery(“ul.item”)。单击(函数(){
var x=$(this.text();
变量y=x.replace(/\s+/g',)+“()”;
评估(y)
});
函数名(){
控制台日志(“emp”);
}
函数prodinfo(){
console.log(“prodinfo”);
}
函数salestatus(){
console.log(“salesstaus”);
}

    emp名称 产品信息 销售状态
你可以试试这个

jQuery("ul .item").click(function(){
   var x = $(this).text();
   var y = x.replace(/\s+/g, '');
    //console.log(y);
    eval(y +'()');
});
function empname(){
  console.log("emp");
}
function prodinfo(){
   console.log("prodinfo");
}
function salestatus(){
 console.log("salestatus");
} 

为什么要依赖于通过处理html标记之间的字符串来调用函数的某种动态方式呢。html标记之间使用的文本仅用于阅读目的。您不应该处理它,因为在这种情况下,如果您将文本值更改为,它将影响您的编码,并且需要根据文本更改代码。如果预定义的函数已经知道,您可以用下面的方法来实现

<script>
function empname(){
  alert("emp");
}
function prodinfo(){
   alert("prodinfo");
}
function salestatus(){
  alert("salesstaus");
}
</script>
<ul>
  <li class="item" onclick="empname()">emp name</li>
  <li class="item" onclick="prodinfo()">prod info</li>
  <li class="item" onclick="salestatus()">sale status</li>
</ul>

函数名(){
警报(“emp”);
}
函数prodinfo(){
警报(“prodinfo”);
}
函数salestatus(){
警惕(“销售人员”);
}
    emp名称 产品信息 销售状态

像这个窗口一样调用[y]();我试过了,但它不叫Dhaval,你有没有检查之前的答案,然后再做你的?同样的回答没有多大意义无论何时我的答案出现在刷新页面后,我看到ans已经从审阅队列中给出:我可以请求您在源代码周围添加一些上下文吗。只有代码的答案很难理解。如果你能在你的帖子中添加更多的信息,这将有助于提问者和未来的读者。好的,下次我会按照你说的做