【问题标题】:How to use jquery autocomplete with var?如何使用带有 var 的 jquery 自动完成功能?
【发布时间】:2012-10-16 19:20:19
【问题描述】:

我有一个使用 jQuery 自动完成功能的函数:

var row_num = 5;
function addModule() {
    // function addModule code
    $('input[name=\'product\']').autocomplete({
        delay: 0,
        source: function(request, response) {
            //function code
        },
        select: function(event, ui) {
            //function code
            $('input[name=\'module[' + row_num + '][featured]\']').attr('value',
            data.join());
        },
        focus: function(event, ui) {
            return false;
        }
    });
    // function addModule code continues
});​

Var row_num 在自动完成正文中不起作用。我试图在“选择”和其他不同的地方另外声明它,但没有。浏览 ui 自动完成文档没有结果。

如何使用我的 var 自动完成?

【问题讨论】:

标签: jquery autocomplete closures


【解决方案1】:

改变这一行

            $('input[name=\'module[' + row_num + '][featured]\']').attr('value', data.join());

到这里

            var t = 'input[name=\'module[' + row_num + '][featured]\']'
            alert("This is the value: "+t.toString());
            $(t).attr('value', data.join());

也许你并不期待你所看到的?


这应该是闭包的一部分。你试过这样吗?

function addModule() {
    var row_num = 5;
    // function addModule code
    $('input[name=\'product\']').autocomplete({
        delay: 0,
        source: function(request, response) {
            //function code
        },
        select: function(event, ui) {
            //function code
            $('input[name=\'module[' + row_num + '][featured]\']').attr('value',
            data.join());
        },
        focus: function(event, ui) {
            return false;
        }
    });
    // function addModule code continues
});​

【讨论】:

  • @Sergey - 那么问题不在于关闭,请参阅上面的评论。
  • 谢谢。现在我看到另一个问题)
猜你喜欢
  • 1970-01-01
  • 2017-08-05
  • 2015-06-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-09-21
  • 2013-09-19
相关资源
最近更新 更多