我试图在我的SignalR实现中使用Typeahead。
发生了什么事,是我的集线器被命中并返回了值,但是在result
之后的.done()
是undifined
。我不知道为什么?
Java脚本
$(function () {
var search = $.connection.searchHub;
$.connection.hub.start().done(function () {
$('#searchBar').typeahead(null, {
minLength: 2,
// begin source
source: function (query, process) {
var suggestions = [];// my callback value
search.server.search(query)
.done(function (result) {
console.log(result);
$.each(result, function () {
console.log(result);
suggestions.push(this);
process(suggestions);//process is a callback method
});
}).fail(function (error) {
console.log(error);
process([]);//process is a callback method, don't know if this is necessary here, but will produce no suggestions
});
}
});
});
毂:
[HubName("searchHub")]
public class SearchHub : Hub
{
public async Task Search(string query)
{
api = new MovieApi();
var result = await api.Search(query);
if (result.results != null)
{
Clients.Client(Context.ConnectionId).results(result.results[0].title);
}
else
{
Clients.Client(Context.ConnectionId).noResults("There are no search results!");
}
}
}
参考方案
您的搜索方法不返回任何内容,因此其未定义并不奇怪。您需要更改为Task<T>
并返回一些内容
我也看不到您正在订阅results
或noResults
?喜欢
search.client.results = function(result) {
console.log(result);
};
编辑:使用SIgnalR对此也很奇怪,带有请求/响应的标准REST应该很好
获取JavaScript值到C#字符串 - javascript是否可以在C#中执行类似的操作?该值为“ 10/05/2014”string jsValue = javascript("$('#EstimatedStartDate').val()"); 参考方案 您能否更详细地阐明您要做什么。看来您正在尝试从javascript(客户…
.NET C#Webbrowser填充输入,不带ID或类名 - javascript我需要在网络浏览器中填写一个输入,但这不起作用。我认为必须使用name属性来完成,但是怎么做呢?foreach (HtmlElement login in webBrowser1.Document.GetElementsByTagName("input")) { if (login.GetAttribute("name"…
ASP.NET-如何更改JSON序列化的方式? - javascript我正在使用ASP.NET通过以下查询返回Json文件:public ActionResult getTransactionTotals(int itemID) { DBEntities db = new DBEntities(); var query = from trans in db.Transactions // Linq query removed …
在JavaScript中运行方法C# - javascript打扰一下,我有这种C#asp方法。受保护的无效btnSave_Click(对象发送者,EventArgs e)有谁知道我该如何发送脚本给您?可以办到?。 javascript大神给出的解决方案 是的,那可以做到。为此,您在.aspx.cs页中创建了函数,然后单击保存按钮上的代码将其复制到函数中,然后执行以下步骤。//Call cs method from J…
从php文件运行命令行程序 - javascript我想从php文件执行任何命令。我有一个nodejs文件,当我给出命令执行某件事时。它工作正常。即abc.js参数在终端上可以正常工作并执行一些任务但是,我想从运行我的命令的php文件中执行相同的任务。我尝试了不起作用的exec('filename arguments')。如果我给exec(ls -l)给出输出。请让我知道您的建议。谢谢 参考方案 我认为您必须…