2010-09-07 25 views
5

Bir dizgiyi kodlarken sorun yaşıyorum, böylece bir bağlantıya değişken ekleyebilirim. Eminim bu gerçekten çok basit, ama bir şeyleri dönüştürmekte zorlandım.jQuery encodeURI href çalışmıyor

$("a.inquiry").attr("href", "/inquiry/6933/text=" + encodeURI("text o")); 

Bu çalışmaz.

encodeURI("text o") 

Yine döndürür: Yerine

link/text o 

:

Ayrıca çalıştı
link/text%20 

:

$("a.inquiry").attr("href", encodeURIComponent("/inquiry/6933/text=" + "text o")); 
+0

Bu soruyu * encodeuricomponent * ile etiketlediğinizde, bunu denemediniz mi? – Gumbo

+1

encodeURIComponent çalışması gerekir. Sağladığınız örneği denedim ve çalışıyor gibi görünüyor. Http://jsfiddle.net/XdJCM/ adresine bakın. – Zafer

cevap

13

yerine encodeURIComponent ile deneyin.

+2

Bu çalışma ya da çalışmıyor ya da başka bir şey daha sonra kodlama geri alınıyor mu ?- ( – holden

+0

@holden: O kadar olabilir, "encodeURIComponent" her zaman benim için çalıştı. – Sarfraz

+0

benimle de çalışmıyor, aslında virgülle çalışıyor ama boşluklar için değil –

6

Aynı problemi yaşadığımı düşünmüştüm ama sonuçta, linke tıkladıktan sonra hem sonuçta ortaya çıkan linkin hem de adres çubuğundaki mouseOver sonuçlarına baktığımı anladım. Tarayıcımın her iki durumda da boşlukları gösterdiği ortaya çıkıyor - yani URI'yi adres çubuğundan kopyalayıp emaclarda yapıştırdığımda% 20 kendini gösterdi.

+0

Vay, bu benim için de bir çözümdü. – user3761308