2011-09-19 22 views
5

मैं ColdFusion 9 और नवीनतम और सबसे बड़ी jQuery उपयोग कर रहा हूँ।jQuery - क्या मुझे एक वैरिएबल एन्कोड करने की आवश्यकता है?

मेरे पृष्ठ के शीर्ष पर, मैं इस का उपयोग करें:

<cfajaxproxy cfc="artists" jsclassname="jsApp"> 

मैं एक खोज फ़ील्ड है:

<input id="Artist" class="Search" type="text"> 

खोज क्षेत्र में एक उपयोगकर्ता प्रकार, मूल्य एक में पारित कर दिया जाता है jQuery समारोह:

$(".Search").keyup(function() { 
    var Artist = $("#Artist").val(); 
    var QString = "Artist=" + Artist; 
    $("#ArtistSearchResultsDiv").load("ArtistSearchResults.cfm?"+QString); 
}); 

खोज परिणामों div CFSCRIPT में इन मदों में कोई पृष्ठ लोड:

objArtists = createObject("component", "artists"); 
GetArtists = objArtists.getArtists(Artist); 

मैं एक सीएफसी कि क्वेरी चलाता है और सही रिकॉर्ड रिटर्न दिया है।

समस्या यह है कि जब मैं खोज बॉक्स में टाइप करता हूं, जैसे ही मैं एक स्थान हिट करता हूं, क्यूस्ट्रिंग चर में कोई और मूल्य नहीं जोड़ा जाता है, और इसलिए वे मान क्वेरी में पास नहीं होते हैं।

यहाँ जब के लिए "बीटल्स" खोज कितना खोज स्ट्रिंग Firebug में दिखाई देता है:

GET http://127.0.0.1:8500/WebSites/AwesomeAlbums/GlobalAdmin/ArtistSearchResults.cfm?Artist=The 

यह जैसे ही यह एक अंतरिक्ष देखता है बंद हो जाता है।

इसलिए, यदि आप के लिए "बीटल्स" खोज कर रहे थे, केवल मूल्य "" QString चर में पारित किया जाएगा। यदि आप "सेलिन डायन" खोज रहे थे, तो केवल "सेलिन" पारित किया जाएगा।

मैं यह सोचते हैं कि मैं किसी भी तरह यूआरएल एनकोड QString की जरूरत है। क्या वो सही है? मैं उसको कैसे करू?

+1

हां। अविश्वास उपयोगकर्ता इनपुट। –

+1

हां, मैं किसी को भी "सेलिन डीओन" खोजने पर भरोसा करता हूं। वास्तव में, जैसे ही वे "सेली" पहुंचते हैं, मुझे एक आईपी पता अवरुद्ध करना चाहिए। –

उत्तर

9
var QString = "Artist=" + encodeURIComponent(Artist); 
+0

अवेम! यह जवाब है। यह वास्तव में वह जानकारी है जिसकी मुझे आवश्यकता है। –

संबंधित मुद्दे