0

サーバーからGETを使用したユーザーのリストからユーザー名をPOSTする必要がありますが、そのユーザー名を文字列としてPOSTする方法. どんな助けでも大歓迎です、事前に感謝します!

  //get a list of users from server side
$.getJSON(
  '/userlist',
  function(data) {
    var user = data.users;
    $("#utbildning").text(user[1].username);
    $("#tekniker").text(user[2].username);
  }
);

//post user name and password at login  
$(document).ready(function() {
  $("#knapp").click(function(){

    //name of the user should be a name from the user list comes from server
    var name=$.getJSON(
      '/userlist',
      function(data) {
        var user = data.users;
        user[1].username;
      }
    );
    var pass=$("#kod").val(); //password from input field
    var data = new Object();
    data["username"] = name;
    data["password"] = pass;

    $.ajax(
      {
         url: "/login",
         data: JSON.stringify(data),
         processData: false,
         type: 'POST',
         contentType: 'application/json',
      }
    );
  });
})
4

1 に答える 1

1

複数のエラー:

  • 大きな変更がない限り、使用しても何も得られませんvar name = $.getJson(...
  • 次に、$.getJSON は非同期であるため、$.getJSON コールバック メソッドで ajax 呼び出しから設定された変数を使用する必要があります。最初の電話と同じように。

これが「修正された」バージョンです(ただし、コードが正しい場合):

  //get a list of users from server side
$.getJSON(
  '/userlist',
  function(data) {
    var user = data.users;
    $("#utbildning").text(user[1].username);
    $("#tekniker").text(user[2].username);
  }
);

//post user name and password at login  
$(document).ready(function() {
  $("#knapp").click(function(){

    //name of the user should be a name from the user list comes from server
    $.getJSON(
      '/userlist',
      function(data) {
        var user = data.users;
        var name = user[1].username;
        var pass=$("#kod").val(); //password from input field
        var data = new Object();
        data["username"] = name;
        data["password"] = pass;

        $.ajax(
          {
             url: "/login",
             data: JSON.stringify(data),
             processData: false,
             type: 'POST',
             contentType: 'application/json',
          }
        );
      }
    );
  });
})
于 2012-04-26T14:34:42.397 に答える