jquery自动完成不返回值val()

时间:2015-08-09 07:21:46

标签: jquery jquery-autocomplete

来源应该是链接/搜索/山姆 我的代码应该返回输入值,例如'sam' 但是返回null。

<script>
         $(function() {
            $( "#search" ).autocomplete({
                autoFocus: true,
                minLength: 2,
                source: ["/search/" ,$(this).val()].join("")
            });
         });
</script>

2 个答案:

答案 0 :(得分:0)

你错误地认为this是指$('#search'),而不是window。它指的是null对象,它没有值,因此$(function() { var elm = $("#search"); elm.autocomplete({ autoFocus: true, minLength: 2, source: ["/search/", elm.val()].join("") }); });

这样做:

""

但是,不知道它是否会成功,因为该值将为WSAEventSelect(s,hevent,FD_READ | FD_WRITE | FD_CLOSE); while (1) { WaitForSingleEvent(hevent,TIMEOUT); WSAEnumNetworkEvents(s,hevent,&netevent); if ((netevent.lNetworkEvents & FD_READ) || (netevent.lNetworkEvents & FD_CLOSE)) { do { resrecv=recv(s,buf,sizeof(buf),0); if (resrecv<0) throw "recv failed"; if (resrecv==0) break; /* Handle the message here. */ } while (netevents.lNetworkEvents & FD_CLOSE); } /* Write response to the socket. (If we received all of the request) */ if (netevent.lNetworkEvents & FD_CLOSE) { closesocket(s); break; } } ,因为在页面加载时用户不会输入任何值。

您可能需要查看一些提供回调以填充建议的内容。

答案 1 :(得分:0)

您必须使用加号(+)符号而不是逗号(,)。要创建源链接,例如:/search/sam

这是更新的代码:

<script>
         $(function() {
            $( "#search" ).autocomplete({
                autoFocus: true,
                minLength: 2,
                source: ["/search/" +$(this).val()].join("")
            });
         });
</script>