【问题标题】:variable with function name jquery具有函数名称 jquery 的变量
【发布时间】:2017-03-06 18:43:48
【问题描述】:

有什么方法可以将循环与函数名连接起来 就像我有带有附加按钮的表单,通过 jquery 附加功能添加 5 个位置 div,5 次循环位置 div .location div 有州城市和邮政编码选择选项,这将由 jquery 中的 ajax 调用这是我的代码。 room 是循环名称。

<select data-live-search="true" class="form-control " name="sAState'+room+'" id="sAState'+room+'" onChange="AddLoadCity+room();">
       <option value="1">state1</option>
       <option value="2">state2</option>
       </select>
     <div class="col-lg-10 col-md-9 col-sm-10 col-xs-12" id="AddCityDiv'+room+'" ><select data-live-search="true" class="form-control " name="sCity" id="sCity'+room'" onChange="LoadZipCode'+room+'();"> 
<option value="1">city1</option>
 <option value="2">city2</option></select></div>

        for(i=0;i;i<5;i++)
        {
          function AddLoadCity+i()
            {
            alert($('#sAState'+i+').val()); 
            }
          function AddLoadZip+i()
            {
            alert($('#sCity'+i').val()); }
            }
        }

【问题讨论】:

  • 标点符号拯救生命
  • 不需要多个功能。你可以在问题中包含完整的htmljavascript 吗?
  • 请告诉我谁能动态调用函数名 function Loadcity'+loop+'(){...}

标签: javascript jquery ajax


【解决方案1】:

我不认为您完全想创建具有动态名称的多个函数。但如果你真的想这样做,你可能会这样做:

var functions = [];
for(i=0;i;i<5;i++)
    {
      functions['AddLoadCity'+i] = function()
        {
        alert($('#sAState'+i).val()); 
        }
      functions['AddLoadZip'+i] = function()
        {
        alert($('#sCity'+i).val()); }
        }
    }

那么你可以这样称呼他们

functions.AddLoadZip1()

编辑:

他们也是一个错误

$('#sAState'+i+').val()

即+'是语法错误。

【讨论】:

  • 谢谢,但它确实是动态调用的,因为 .在 bootstrap addmore.js 中有循环附加位置 div .Location div 有州城市和 zip 所以我想在用户点击位置 div 的地方获得价值 .is div 1 div 2 .....?根据获取城市价值和邮编价值。但如果你有更多的想法,你可以分享。谢谢
猜你喜欢
  • 1970-01-01
  • 2016-04-23
  • 2011-11-16
  • 1970-01-01
  • 2021-05-01
  • 2015-06-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多