jquery ajax yanıt + karakterini kaldırır

2 Cevap php

Update:

Ben başlamak için html gelen değerini okuyorum zaman sorun gibi görünüyor.

Bu biçimlendirme:

<input name="someval" type="text" value="Receive (+ open)" />

I someval bu gibi değerini okuma ve ajax görüşmesine geçiyorum:

    $.ajax({

        data: 'someval=' + $("input[name=someval]").val(),

        success: function(resp) {
           $("#targetd").html(resp);
           alert(resp); 
        }
});

$("input[name=someval]").val() bunu bir + var çünkü $("input[name=someval]").val() data: 'someval=' + için birleştirir zaman sorun olmuyor gibi görünüyor.

Old

Ben bir php komut dosyası için bir ajax çağrısı yapıyorum ve tepki html biçimlendirme içeren döndü. Ben bu yanıtı alır ve bundan sonra bir div atayın.

success: function(resp) {
   $("#targetd").html(resp);
   alert(resp); 
}

Iade edilen tepkinin bir parçası bu gibi bakmak gerekiyordu. (notice the + işareti)

<input name="someval" type="text" value="Receive (+ open)" />

Bu çalışma para cezası ve ben iade biçimlendirme + işaretini eksik nedense dışında, div atayabilirsiniz

<input name="someval" type="text" value="Receive (  open)" />

Php script kendisi, biçimlendirme çıktılar, o çalışıyor, ancak biçimlendirme ajax yanıt yoluyla sayfada geçirilen zaman + kaybolur. Ben gösterileri yukarıdaki kodu olarak, ben sadece en kısa sürede iade bulunuyor gibi olduğu gibi alıyorum ve div atamak, biçimlendirme için özel bir şey yapmıyorum. Ben doğrudan yanıtı uyarmak zaman + de div atanan alır sadece zaman o kadar eksik. Burada oluyor ne olabilir emin olun.

2 Cevap

Eğer yanıt kodlama HTML denedin mi? I / decode kodlamak için benim javascript bu işlevleri kullanabilirsiniz.

function HtmlEncode(value)
{
    return $('<div/>').text(value).html();
}

function HtmlDecode(value)
{
    return $('<div/>').html(value).text();
}

Ben + olarak artı kaçmaya çalışırken tavsiye + Bu sorunu çözüp çözmediğini görmek. Eğer, onun bir varlık kaçış sorun.