我想将多个参数传递给ajax自动完成扩展程序

时间:2015-04-30 07:24:54

标签: ajax ajaxcontroltoolkit autocompleteextender

是否有可能是这样的

TextBox1_AutoCompleteExtender.ServiceMethod = "Getlist(" + TextBox1.Text + "," + TextBox1.Text .Length+ ",size_master,size_id,size_name)";

表示我想将多个参数传递给服务。

我在互联网上看到,大多数帖子都有相同的复制粘贴解决方案,它建议在密钥上传递参数

我的问题是,如果我使用set context key,那么将如何传递搜索参数。

1 个答案:

答案 0 :(得分:2)

不,您可以将多个参数传递给Web方法。

参数在AutoComplete.js第677行中定义:

var params = { prefixText: this._currentPrefix, count: this._completionSetCount };

正如您所看到的,Web方法签名只需要2(或3,如果您使用contextKey)参数。

您可以尝试以多种方式将多个参数传递给Web方法:

  1. 只要它是开源的,就可以以任何方式更改Ajax Control Tookit的源代码。
  2. 尝试绑定到现有方法,例如_onMethodComplete方法。
  3. 作为中间两种方式之间的中间位置,您可以将_tickHandler委托替换为您自己的实现。