2012-01-12 2 views
0
<script type="text/javascript"> 
    $(".commentPost").live('click',function() { 
     var expressID = $(this).attr('id'); 
     var comment = $("#getComment"+expressID).attr('value'); 

     //If comment contains & then how to pass it in URL?? 
     $.get('../addons/comment.jsp?comment='+comment+'&expressID='+expressID, function(data) { 
      $('#commentBlock'+expressID).append(data); 
      $("#getComment"+expressID).attr('value',''); 
     }); 
    }); 
</script> 

Просьба сообщить мне, как пройти & в виде текста по URL. И как его заменить, используя jQuery.Pass & as текст в URL?

+0

«как тест по URL»? –

+0

Извините, его текст ... –

ответ

0

Используйте второй аргумент для передачи хэша данных. Таким образом, JQuery будет заботиться должным образом Кодировка URL:

var data = { comment: comment, expressID: expressID }; 
$.get('../addons/comment.jsp', data, function(data) { 
    $('#commentBlock'+expressID).append(data); 
    $("#getComment"+expressID).attr('value',''); 
}); 
+0

Спасибо, Ton ... –

0

Для любого URL, Javascript несмотря на это, вы должны закодировать специальные символы, которые иначе имеют особое значение:

// http://site.com/script.php?var1=string+with+%26+sign&var2=lol 
//            ^^^ 

<?php 
echo $_GET['var1']; // "string with & sign" 
?> 

Однако, в этом случае вы должны воспользоваться jQuery, чтобы сделать это для вас, передав параметры $.get как объект во втором аргументе.

Посмотрите на the documentation.