Uncaught TypeError: Cannot read property 'Länge' undefined AutoVervollständigen

Ich versuche, auto-vervollständigen mit der Beispiel

dafür bin ich mit code

<head>
    <title>JSP Page</title>
    <link rel="stylesheet" type="text/css" href="css/jquery-ui.css" />
    <script src="js/jquery-1.9.1.js"></script>
    <script src="js/jquery-ui.js"></script>

    <script>

        $(function() {
            function log(message) {
                $("<div>").text(message).prependTo("#log");
                $("#log").scrollTop(0);
            }

            $("#productName").autocomplete({
                source: function(request, response) {
                    alert('hiiiii');
                    $.ajax({
                        url: "ajaxProduct",
                        dataType: "json",
                        data: {
                            qry: $("#productName").val(),
                            maxRows: 5
                        },
                        success: function(data) {
                            alert('success');
                            alert(data.productList);

                            response($.map(data.productList, function(item) {
                                alert(data.productList);
                                console.log(item);
                                return {
                                    label: item.productName,
                                    value: item.productName,
                                    id: item.productId
                                }
                            }));
                        },
                        error: function(data) {
                            alert(data.productList);
                            console.log(typeof data);
                            console.log(data);
                            alert('error');
                        }
                    });
                },
                minLength: 1,
                select: function(event, ui) {
                    log(ui.item ?
                    "Selected: " + ui.item.label :
                    "Nothing selected, input was " + this.value);
                    $("#productId").val(ui.item.id)
                },
                open: function() {
                    $(this).removeClass("ui-corner-all").addClass("ui-corner-top");
                },
                close: function() {
                    $(this).removeClass("ui-corner-top").addClass("ui-corner-all");
                }
            });
        });

    </script>
</head>

<body>
Product Id <span id="productId"></span><br>
Product Name <input type="text" name="productName" id="productName"/>

</body>

Es zeigt alert('hii');,alert('success');, dann in der alert-box zeigt undefined.

Auf Konsole.log zeigt

event.returnValue is deprecated. Please use the standard event.preventDefault() instead.
Uncaught TypeError: Cannot read property 'length' of undefined jquery-1.9.1.js:766
Denying load of chrome-extension://flhdcaebggmmpnnaljiajhihdfconkbj/jquery-2.0.2.min.map. Resources must be listed in the web_accessible_resources manifest key in order to be loaded by pages outside the extension. (index):1

Jquery:766 ist

 arg is for internal usage only
    map: function( elems, callback, arg ) {
        var value,
            i = 0,
            length = elems.length,//766 line number
            isArray = isArraylike( elems ),
            ret = [];

Wie diese zu lösen.

  • Was ist Ihre resultierende Datenformat? Ich meine, wenn Sie diese url ajaxProduct, was Sie bekommen?
  • console.log(data) an den Erfolg zu sehen, was Sie bekommen???????
  • es enthält eine arraylist von Artikelnr und Artikelname
  • Könnten Sie bitte zeigen Sie Ihre backend-code auf Ihre Frage auch; vor Allem die Rückkehr Teil
  • Es zeigt nur Fehler, die wie bereits erwähnt in Frage
  • zeigen Rückkehr Teil von backend? Benutzt du php?
  • console.log(Daten) nach alert('Erfolg') zeigt Object {productId: 0, productName: null}
  • ok, siehe meine Antwort, und wir brauchen eine Konfiguration, die auf die Rückkehr Teil Ihrer backend-code, wenn Sie irgendwelche Fehler.

InformationsquelleAutor xrcwrn | 2014-03-28
Schreibe einen Kommentar