rebecka0529
210
2021-07-13 13:38:24
9
179

node js ajax통신 server data 어떻게 이용하나요 ㅜㅜ??????????


ajax로 동적 셀렉트박스를 만들고 db에서 값을 받아 옵션값으로 넣고싶은데요


ajax 통신하여 server에서 sequelize이용해서 db에서 데이터를 받았는데요

그 데이터를  script내에서 어떻게 이용할수있을까요 ㅠㅠ???




0
  • 답변 9

  • buSSat
    147
    2021-07-13 13:40:04 작성 2021-07-13 13:40:10 수정됨

    ajax로 데이터 다받아오였으면 끝난거 아닌가요..?

    렌더링하는쪽 얘기하시는건가

  • rebecka0529
    210
    2021-07-13 13:53:18

    네ㅜㅜ server에서 로그찍을땐 값 다나오는데  ajax내에서 alert 띄워 봐도 값이 안나와서요 ㅜㅜ

    <%%> 이런식으로 script밖에서 받을수있었는데 ajax내에서는 어떻게 해야하나요 ㅜㅜ


  • 카카오콘
    687
    2021-07-13 13:55:03 작성 2021-07-13 13:56:58 수정됨

    ajax 내.. 라고 말씀하시면

    success: function(result) {

     alert(result)

    }


    띄워보시면 json 타입으로 출력되지 않으세요?


                                            url: "/master/delete",

                    data: {

                    companyNo: $("#companyNo").val()

                    },

                    success: function (result) {

                                               alert(result)

                    }



    요런거 말씀하시나

  • rebecka0529
    210
    2021-07-13 14:15:14 작성 2021-07-13 14:16:01 수정됨

    네 저렇게 alert했을때 html 하고script 만 나와요ㅜㅜ


     <input id="test" type ="hidden" value="<%= select_b[0].NAME %>"></input>



     $(function () {

                    

                    var select = "<option>:: ajax master::</option>";

                    var result = $("#test").val();

                    alert(result)


                    $("#main").change(function () {


                        if ($("#main").val() == "") { // select의 value가 ""이면, "선택" 메뉴만 보여줌.


                            $("#sub")

                                .find("option")

                                .remove()

                                .end()

                                .append(select);


                        } else {


                            comboChange($(this).val());


                        }


                    });


                    function comboChange() {


                        

                        $.ajax(

                                {

                                    type: "get", 

                                    url: "/getList/", 

                                    datatype: "array", 

                                    data: $("#form_id").serialize()}

                            )

                            .done(function (x) {


                                $("#sub")

                                    .find("option")

                                    .remove()

                                    .end()

                                    .append(result)


                            })

                            .fail(function (xhr, status, errorThrown) {

                                alert("Ajax failed")

                            })


                    }


                });



    이렇게 아이디로 값 뽑아서 변수넣고 alert 찍었을때 잘나오는데 append()내에 넣으면 왜 안나올까요

    ㅜㅜ............?


    select 변수는 append에 넣었을때 값이 나와요ㅜㅜ

  • 카카오콘
    687
    2021-07-13 14:21:45

     .done(function (x) { 

    }


    = 결과값이 x에 담긴다는 이야기입니다.

    .append(x) 해보세요.


    .done(function(result) ) {

    }

    로 바꿔보시거나..

  • buSSat
    147
    2021-07-13 14:24:08

    appdend 하시는 값이 var result = $("#test").val(); <== 이 result 변수값 인데..

  • rebecka0529
    210
    2021-07-13 14:25:18
    append(x) append(result) 둘다 해보았지만ㅠㅠ 되지않아요ㅜㅜ
  • 카카오콘
    687
    2021-07-13 14:26:32

    일단 .done(function (x)) {

     alert(x)

    }

    해서 x에 값이 들어오는지 확인하세요. 안들어오면 서버단이나 받는데부터 문제있는걸로 보이네요..

  • rebecka0529
    210
    2021-07-13 14:58:56

    alert(x)했을때 화면 html script만 나와요ㅜㅜ ajax통신은 됬으니까 함수실행이된거같은데 받는부분이 잘못된걸까요 ㅜㅜ

  • 로그인을 하시면 답변을 등록할 수 있습니다.