0

只是我,但使用 jQuery mobile 我似乎向前迈了一步,后退了两步?

我要做的就是让自动完成选项起作用。我尝试使用 jQuery Mobile.AutoComplete 但无法让它工作,所以我尝试使用 jQuery ui.autocomplete。

使用 Asp.net MVC,我有一个共享页面。

我很想让这个工作,请帮助(不要关心是否使用 jQuery 来工作移动自动完成选项是最好的)....

<head>
   ...
    <script src="~/Scripts/JQuery/jquery.1.9.1.min.js"></script>
    <script src="~/Scripts/JQuery/UI/jqueryUI-1.10.2.min.js"></script>

    <script src="~/Scripts/JQuery/Mobile/jquery.mobile-1.3.0.min.js"></script>
    <script src="~/Scripts/DateValidation.js" type="text/javascript"></script>
    <script src="~/Scripts/JQuery/UI-TimePicker/jquery.ui.timepicker.js"></script>
    <script>
    $.ajaxSetup ({
    // Disable caching of AJAX responses
    cache: false
    });
    </script>
</head>

然后我有一个菜单(共享)

<div data-theme="b" data-role="header">
     <script type="text/javascript">

            $(function () {
                $("#clientSearch").autocomplete({
                    source: "@Url.Action("ClientSearch","Schedule")",
                 minLength: 3,
                 select: function (event, ui) {

                     $("#clientSearch").val(ui.item.ClientName);
                     $("#clientSearchId").val(ui.item.ClientId);

                     return false;
                 }
             }
        ).data("uiAutocomplete")
            ._renderItem = function (ul, client) {
                return $("<li></li>")
                    .data("item.autocomplete", client)
                    .append("<a>" + client.FullName + "</a>")
                    .appendTo(ul);
            };
         });

     </script>
     <h3>Schedule</h3>
     <a href="index.html" data-icon="plus"  class="ui-btn-right"data-iconpos="notext">Appointment</a>
     <input type="hidden" id="clientSearchId"/>
     <input name="clientSearch" id="clientSearch" placeholder="" value="" type="search">
        <div data-role="navbar" data-iconpos="top">
            <ul>
                <li>
                    <a href="~/Home/Index" data-transition="slide" data-theme="">
                        Home
                    </a>
                </li>
                <li>
                    <a href="/Schedule/MobileSchedule" data-transition="slide" data-theme="">
                        Schedule
                    </a>
                </li>
            </ul>
        </div>
    </div>

所以页面看起来像这样

@{
    ViewBag.Title = "Home";
    Layout = "~/Views/Shared/_AppHomeLayout.cshtml"; 
}

<div data-role="page" id="pageHome">
    <style>
        .ui-listview-filter-inset {
            margin-top: 0;
        }
    </style>

    @RenderPage("~/Views/Shared/_MobileMenu.cshtml")
    <div data-role="content">
        <div data-role="content"> ... </div> 
    </div>
</div>

加载页面时出现以下错误:

未捕获的错误:NotFoundError:DOM 异常 8 jquery.1.9.1.min.js:11(匿名函数) jquery.1.9.1.min.js:11 b.fn.extend.domManip jquery.1.9.1.min.js :11 b.fn.extend.replaceWith jquery.1.9.1.min.js:11 (匿名函数) jquery.mobile-1.3.0.min.js:2 b.extend.each jquery.1.9.1.min. js:4 b.fn.b.each jquery.1.9.1.min.js:4 (匿名函数) jquery.mobile-1.3.0.min.js:2 b.event.dispatch jquery.1.9.1.min .js:4 v.handle jquery.1.9.1.min.js:4 b.event.trigger jquery.1.9.1.min.js:4(匿名函数) jquery.1.9.1.min.js:11 b .extend.each jquery.1.9.1.min.js:4 b.fn.b.each jquery.1.9.1.min.js:4 b.fn.extend.trigger jquery.1.9.1.min.js: 11 a.Widget._trigger jquery.mobile-1.3.0.min.js:2 a.Widget._createWidget jquery.mobile-1.3.0.min.js:2 a.widget._createWidget jquery.mobile-1.3.0。 min.js:2(匿名函数)jquery.mobile-1.3.0。min.js:2 a.(匿名函数).(匿名函数) jquery.mobile-1.3.0.min.js:2 (匿名函数) jquery.mobile-1.3.0.min.js:2 b.extend。每个 jquery.1.9.1.min.js:4 b.fn.b.each jquery.1.9.1.min.js:4 a.fn.(匿名函数) jquery.mobile-1.3.0.min.js: 2 C jquery.mobile-1.3.0.min.js:2 a.mobile.allowCrossDomainPages.h.isSameDomain.a.ajax.success jquery.mobile-1.3.0.min.js:2 c jquery.1.9.1。 min.js:4 p.fireWith jquery.1.9.1.min.js:4 k jquery.1.9.1.min.js:19 rjs:2 c jquery.1.9.1.min.js:4 p.fireWith jquery.1.9.1.min.js:4 k jquery.1.9.1.min.js:19 rjs:2 c jquery.1.9.1.min.js:4 p.fireWith jquery.1.9.1.min.js:4 k jquery.1.9.1.min.js:19 r

想法?看起来它正在尝试使用 jQuery 移动自动完成功能,如果有人有解决方案\代码示例来修复,它会对我有很大帮助!

4

1 回答 1

0

将此行括号内的引号从双引号更改为单引号,如下所示:

source: "@Url.Action('ClientSearch','Schedule')",
于 2013-03-28T09:27:34.963 回答