2012-08-22 6 views
0

ı 배열을 다른 하나의 데이터로 보내야합니다.

var img=$('#image').val(); // image name 

var formdatas=($(this).serialize()); // data from form, including to many data 

data:formdatas, //legal 
data:{f:formdatas,r:img}, //legal but formdatas is an array ı cant send it like this 

하지만 ı 다음과 같은 것이 필요합니다.

data:{formdatas,r:img}, // this is not working 

이것은 내 완전한 코드입니다.

$('#lastikekle').submit(function() { 

    var resim=$('#resim').val(); 

    var formverileri=($(this).serialize()); 

    $.ajax({ 
       type:"POST",   
       url: "lastikekle.php", 
       data:{formverileri,r:resim}, ???? 
       success: function(result){ 

       $("#dialog").dialog(); 
       $("#dialog").html(result); 
             } 
     }); 


    }); 
+0

'직렬화를 사용할 수는()'아닌 문자열 배열을 반환합니다. – Utkanos

답변

2

시도 : (.serialize 문자열을 반환)

data: formdatas+'&r='+encodeURIComponent(img) 

편집 : 또는 serializeArray

$('#lastikekle').submit(function() { 
    var resim = $('#resim').val(); 
    var formverileri = $(this).serializeArray(); 
    formverileri.r = resim; 
    $.ajax({ 
     type: "POST", 
     url: "lastikekle.php", 
     data: formverileri, 
     success : function (result) { 
      $("#dialog").dialog(); 
      $("#dialog").html(result); 
     } 
    }); 
}); 
+0

그런 문제를 해결하는 데 사용했습니다. 하지만 éàè 등의 캐릭터 인코딩 문제를 발견했습니다. 그러나 아약스의 '데이터'에 '문자열이 아닌'값을 전달하면 인코딩 문제가 발생하지 않습니다. 이 문자가 사용되지 않는 언어에서는 덜 중요할지 모르지만 데이터로 문자열을 사용하지는 않습니다. – Flater

+0

@Flater 제 편집을 확인하십시오. – xdazz

+0

완벽한 솔루션 :) 나는 대부분의 언어가 실제로 악센트 부호가있는 문자에 의존하지 않기 때문에 인코딩 문제를 모르는 사람들을 비난하지 않습니다. 나는 때때로 프랑스/스칸디나비아 프로그래머들에게 유감 스럽다. 인코딩 문제는 정말 짜증 스럽다. – Flater