0

我读过这篇文章:使用 Jquery UI 自动完成向源传递额外的参数
我正在用 Asp.net C# 开发一个网页。

我的 HTML 代码:

 <input class="tags" to_search="Birds" />
 <input class="tags" to_search="Animals" />

Javascript:

$(document).ready(function() {
     $(".tags").autocomplete({
          source: "GenericHandler.ashx?name="+$(this).attr("to_search")
    });
});

我想将标签的to_search属性传递给通用处理程序。 上面的代码正在调用,但给出了 null 值。 如何获得等于标签属性的值? 请帮忙。<input>
GenericHandler.ashxname
nameto_search<input>

4

2 回答 2

2

假设您.tags在运行时不添加任何内容,您可以这样做。

$('.tags').each(function(i, tag) {
    $(tag).autocomplete({
        source: 'GenericHandler.ashx?name='+ $(tag).attr('to_search')
    });
});

我还建议您像这样在输入标签中使用数据属性。

<input class="tags" data-search="Birds" />

得到最终解决方案,

$('.tags').each(function(i, tag) {
    $(tag).autocomplete({
        source: 'GenericHandler.ashx?name='+ $(tag).data('search')
    });
});

如果您确实将元素动态添加到文档中,则可以执行此操作。

// jquery object of the new element created
var element;

element.autocomplete({
    source: 'GenericHandler.ashx?name='+ element.data('search')
});
于 2013-01-21T08:06:41.937 回答
-1

就这样通过

$('#txtCropname').autocomplete('Handler/CropSearch.ashx', { extraParams: {ids:'new'} });
于 2014-12-29T10:42:30.870 回答