2012-06-14 12 views
6
var search= document.getElementById('appMenu').value 
document.location.href= '${createLink(controller: 'application' , action:'ajaxAppSearch', params: ['query': search])}' 

तत्व एपमेनू एक टेक्स्ट फ़ील्ड है, इसलिए मुझे वह मान मिल रहा है जब उपयोगकर्ता खोज नियंत्रक में जाने के लिए टेक्स्ट बॉक्स में प्रवेश करता है। हालांकि, यह मुझे बताता रहता है कि पैराम क्वेरी क्वेरी शून्य है। ऐसा लगता है कि खोज लिंक विधि में खोज नहीं जा रही है। किसी के पास कोई सुझाव है?क्रिएटेलिंक विधि कॉल में जावास्क्रिप्ट वैरिएबल पास करें Grails

उत्तर

11

Grails (नियंत्रक, जीएसपी और टैग, आदि) सर्वर की तरफ काम कर रहे हैं। क्लाइंट पक्ष पर जावास्क्रिप्ट। और यह लिंक ब्राउजर को डेटा भेजने से पहले तैयार किया गया है, और इससे पहले जावास्क्रिप्ट जीएसपी टैग में अपना वैरिएबल पास कर सकता है।

लेकिन आप सर्वर साइड पर आधार लिंक तैयार कर सकते हैं, और क्लाइंट साइड पर अतिरिक्त पैरामीटर जोड़ने, जावास्क्रिप्ट का उपयोग कर, की तरह द्वारा:

var search= document.getElementById('appMenu').value; 
document.location.href= '${createLink(controller: 'application' , action:'ajaxAppSearch')}?query=' + escape(search); 
+0

भयानक, पूरी तरह से काम करता है धन्यवाद –