Mam jakiś JavaScript, który wysyła dane do funkcji, która wywołuje stronę PHP, jednak otrzymuję błąd, którego nie mogę znaleźć żadnych informacji. Połączenie PostData () znajduje się w środku innego zwykłej funkcji JavaScript. Ale nie mogę go przesłać do strony PHP.

function postData() {
var postdataURL = "path/to/php/page.php";
    $.post (
        postdataURL, {
        "formid":5,
        "clientid":1,
        "userid":1,
        "level":mycat,
        "extra":mytimer,
        "pid":pid
        },
        function () {});
}
9
user2843577 10 grudzień 2013, 02:42

4 odpowiedzi

Najlepsza odpowiedź

Usuń "z nazwy właściwości

$.post (
    postdataURL, {
    formid:5,
    clientid:1,
    userid:1,
    level:mycat,
    extra:mytimer,
    pid:pid
    },
    function () {});

I dodaj A.

alert("Got called"); 

Po

function postData() { 

Aby mieć pewność, że funkcja jest nazywana

4
Alejandro 9 grudzień 2013, 22:46

Przejrzyj swoją zmienną MyCat, Mytimer, PID jest może być obiektem jQuery. To znaczy, że znalazłeś

mycat = $('#cate')

Jeśli to prawda, po prostu to naprawiasz

mycat = $('#cate').val()

Lub jakiś kod otrzymują rzeczywistą wartość.

7
Phuc Tran 14 styczeń 2015, 09:07

Pobiegłem do tego, gdy robię jQuery $ .ajax () wezwanie jak ty. Najwyraźniej (w moim przypadku) był spowodowany odwołaniem zmienną, która nie była w zasięgu i była niezdefiniowana. Na przykład w kodzie:

    "level":mycat,
    "extra":mytimer,
    "pid":pid

Jeśli MyCat, Mytimer lub Pid były null, a masz ten sam problem, to zrobiłoby to.

2
user3740976 14 maj 2015, 11:30

W moim przypadku był taki sam problem, jak @ user3740976. Układam URL niezdefiniowany parametr.

$.ajax({
     type: requestType,
     url: url,       
     dataType: dataType,
     data: dataParams,
 ...

Gdzie jest DataParams

 {"title":{},"iSBN":"111","partNumber":"3332","bookCategory":"1"}

Tytuł jest niezdefiniowany.

1
abpatil 9 sierpień 2019, 12:50