2017-06-30 9 views
6

में मार्ग पैरामीटर जोड़ने की कोशिश करते समय समस्या मेरा जेएस कोड है जो मार्ग और उसके पैरामीटर एंकर टैग में संलग्न है।जेएस

var href = "{!! route('ShowUserMainForm', ['RoleID'=>" + row.RoleID + "]) !!}"; 

var UserColumn = "<td><a href=' " + href + "'><button>Users</button></a></td>"; 

यह यूआरएल नीचे देता

http://localhost:1234/public/system-users/%20+%20row.RoleID%20+%20

मैं नीचे की उम्मीद कर रहा हूँ।

http://localhost:1234/public/system-users/1

मैं कुछ भी याद आ रही है?

उत्तर

9

इसे करने के तरीकों की संख्या:

क्योंकि {!! !!} ब्लॉक कोड जावास्क्रिप्ट कोड से पहले प्रस्तुत करते हैं ताकि आपको मार्ग बनाने की आवश्यकता हो और उसके बाद कॉन्सट रोलआईड {!! !!}।

var href = "public/system-users/" + row.RoleID 

या

var href = "{!! route('ShowUserMainForm') !!}" + row.RoleID; 

या

var href = "{!! route('ShowUserMainForm', ['RoleID'=>'']) !!}" + row.RoleID; 
1

%20 -> प्रतिशत अंतरिक्ष चरित्र

के लिए एन्कोडिंग आप जो देख रहे इस स्ट्रिंग RoleID के लिए मूल्य के रूप में सौंपा है: + row.RoleID +

आप Laravel उन बाहर, कोट के अंदर चला रहे हैं, तो बस जे एस स्ट्रिंग संयोजन छोड़ देते हैं और सीधे पीएचपी बारे में (यह मानते हुए कि आप एक $row सर्वर साइड पर चर उपलब्ध):

var href = "{!! route('ShowUserMainForm', ['RoleID'=> $row.RoleID]) !!}"; 

जब Laravel है एंकर टैग में अपना मार्ग प्रस्तुत करना और उस HTML को बनाना (उन सभी चीजें जो {!! !!} के अंदर होती हैं), आप सर्वर पर काम कर रहे हैं। जब आप जावास्क्रिप्ट चला रहे हों, तो आप क्लाइंट में हैं। आप जिस तरीके से प्रयास कर रहे हैं उसमें ग्राहक से सर्वर पर डेटा नहीं भेज सकते हैं।

+0

पंक्ति JSON ऑब्जेक्ट है और role.RoleID अपने JSON संपत्ति – Pankaj

+0

संपादित है:

अगर row.RoleID json है। उम्मीद है की वो मदद करदे। –

+0

पंक्ति एक क्लाइंट साइड जेएसओएन वैरिएबल – Pankaj