【问题标题】:How to concatenate dynamic values with Jquery selectors? [duplicate]如何使用 Jquery 选择器连接动态值? [复制]
【发布时间】:2014-11-09 14:41:48
【问题描述】:

我有一个带有 div id 的 Jquery 函数,我必须使用该 div id 附加一个动态值。 div id 名称是 foodtypes

$(function() {
var i = 0;
$('body').on('click','#foodtypes+i+ input',function() {
    console.log('foodtype function called')

});

但是这个方法永远不会被调用。所以,我将 i 的值硬编码如下,然后它工作正常。

 $(function() {
var i = 0;
$('body').on('click','#foodtypes0 input',function() {
    console.log('foodtype function called')

});

有人帮助我如何传递或动态连接变量。

【问题讨论】:

  • 你一定在上课,我昨天看到了这个问题。这与将字符串连接到变量的方式相同。选择器只是一个字符串。

标签: javascript jquery


【解决方案1】:

这只是 Javascript 中的字符串运算:

'#foodtypes' + i + ' input'

会产生这个(如果i === 0):

'#foodtypes0 input'

您可以在 Javascript 中添加字符串,当您将数字添加到字符串时,该数字会在添加到前一个字符串之前转换为字符串。

【讨论】:

    【解决方案2】:

    应该是:

    $('body').on('click', '#foodtypes'+i+' input', function() {
        //do something
    });
    

    【讨论】:

      【解决方案3】:

      尝试使用以下代码:

         $(function() {
          var i = 0;
          $('body').on('click','#foodtypes' + i + ' input',function() {
              console.log('foodtype' + i + ' function called');
          });
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-04-03
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-04-08
        • 2016-12-30
        • 2021-09-29
        相关资源
        最近更新 更多