post방식으로 값을 넘길때 ajax통신으로 받을려고 하는데 조언을 구합니다.

post방식으로 값을 넘길때 ajax통신으로 받을려고 하는데 조언을 구합니다.

QA

post방식으로 값을 넘길때 ajax통신으로 받을려고 하는데 조언을 구합니다.

본문

$.ajax({
                url: "/?g=config&pmode=config.form",
                type: "POST",
                data: formData,
                success: function (data, textStatus, jqXHR) {
                    var obj = data;
                    console.log(obj);
                },
                error: function (jqXHR, textStatus, errorThrown) {

                }
            })

소스인데 cf_title이라는 id 값을 가진 input의 값을 빼오고 싶습니다.
그리고 그걸 이용해서 php 변수에 저장도 하고 싶은데 알려주시면 감사하겠습니다.

이 질문에 댓글 쓰기 :

답변 4

1. 우선 html 부분도 보여 주셔야 할 것 같습니다.

2. 그리고 submit을 ajax로 하겠다는 말씀이신가요?

3. data : formData(이 변수에 뭐가 담겨 있는지 앞단이 어떻게 되어 있나요?)

 

<input type="text" id="cf_title" name="cf_title" value="aaaa" />

이게 submit 하려는 form 안에 있는 거라면 굳이 따로 뺄 필요도 없이 받는 페이지에서 저 id를 가진 input의 name으로 처리만 해 주면 될 것 같습니다. 

1. <form class="form-horizontal" id="config_form" name="config_form">
<div class="form-group">
                                <label for="cf_title" class="col-sm-3 control-label">사이트제목</label>
                                <div class="col-sm-9">
                                    <input type="text" class="form-control" id="cf_title" name="cf_title" placeholder="홈페이지 제목" value="<?php echo $config['cf_title'] ?>">
                                </div>
                            </div>
이런 식으로 되어있습니다.

2. form에 action 링크랑 method="post"방식이 아닌 ajax처리로 post 값을 넘겨주고 싶습니다.

3. formData는 제가 인터넷에서 찾아본 form안에 있는 데이타를 넘는거라고 해서 썻는데 아직 정확히는 잘 모르겠습니다

처음 하다 보니 막히는 부분이 많네요

다른 분이 이미 답변하셨네요.
var formData = $("#config_form").serialize();
이걸 $.ajax({ 위에 먼저 선언해 놓으시면 됩니다.
나머지는 실제로 받는 페이지에서 작업하시면 되구요.

var cf_title = $("#cf_title").val();

$.ajax({
                url: "/?g=config&pmode=config.form",
                type: "POST",
                data: formData,
                success: function (data, textStatus, jqXHR) {
                    var obj = data;
                    console.log(obj);
                },
                error: function (jqXHR, textStatus, errorThrown) {

                }
            })

하시면

cf_title에 값이 들어옵니다

var formData = jQuery("#config_form").serialize(); //이부분은 찾아보세요. 

$.ajax({
                url: "/?g=config&pmode=config.form",
                type: "POST",
                data: formData,
                success: function (data, textStatus, jqXHR) {
                    var obj = data;
                    console.log(obj);
                },
                error: function (jqXHR, textStatus, errorThrown) {

                }
            })

<form class="form-horizontal" id="config_form" name="config_form"> 

<div class="form-group"> 

<label for="cf_title" class="col-sm-3 control-label">사이트제목</label> 

<div class="col-sm-9"> 

    <input type="text" class="form-control" id="cf_title" name="cf_title" placeholder="홈페이지 제목" value="<?php echo $config['cf_title'] ?>"> 

</div> 

<input type="button" id="btn" value="send" />

</div> 

출력 : <span id="output"></span>

<script>

$('#btn').on('click', function() {

    $.ajax({

        url: "test.php",

        type: "POST",

        data: {title:$('#cf_title').val()},

        dataType: 'text',

        success: function (data) {

            $('#output').text(data);console.log(data);

        },

        error: function (jqXHR, textStatus, errorThrown) {

            alert(jqXHR.responseText);

        }

    })

});

</script>

 

// test.php

<?php

echo $_POST['title'], ' 입니댜.';

?>

답변을 작성하시기 전에 로그인 해주세요.
전체 123,769
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT