मैं के साथ खेलने के आसपास शुरू jQuery कल. मैं एक लंबे समय के लिए ऐसा करने के लिए चाहते किया गया है, कभी के बाद से पॉल Grenier लेखन शुरू कर दिया अपने श्रृंखला आदरणीय पर अंत उपयोगकर्ताओं के लिए के बारे में jQuery www.endusersharepoint.com वेब साइट. के रूप में मैं इसे का उपयोग करें, मुझे आशा है कि यह एक तरह एक श्रृंखला "त्वरित और आसान" के पदों को जोड़ने के लिए. इस पोस्ट करने के लिए कुछ भी आप चाहते हैं एक ज्ञात पाठ फ़ील्ड का मान सेट करने के लिए कैसे का वर्णन करता है.
इस परिदृश्य में, मैं एक कस्टम सूची जिसका "नया" फार्म के रूप में दिखाया गया दिखता है बनाया गया है:
इस नए प्रपत्र डिफ़ॉल्ट शीर्षक स्तंभ के साथ एक कस्टम सूची के लिए और दो सूची स्तंभ है (नहीं साइट स्तंभ; मुझे नहीं लगता कि यह किसी भी फर्क करना चाहिए).
एक मनमाना मूल्य के लिए फ़ील्ड असाइन करने के लिए उद्देश्य है, "DefaultMeFieldNoSpaces" (आप बता सकते हैं मैं "कोई रिक्त स्थान" बात जा के साथ एक कायर के एक बिट कर रहा हूँ, लेकिन मैं इसे इस आलेख के अंत में ऊपर मसाला).
JQuery के इस बिट मेरे लिए काम किया:
<स्क्रिप्ट प्रकार ="पाठ/जावास्क्रिप्ट"> $(समारोह() { $(' इनपुट[शीर्षक = DefaultMeFieldNoSpaces]').attr( {मान: ' आप अंश twisty भूलभुलैया में हैं, सब एक जैसे। '}); }); </स्क्रिप्ट>
के रूप में मैं इसे समझ में jQuery के इस बिट कह रहा है, "मुझे किसी भी पा इनपुट टैग जिसका शीर्षक = DefaultMeFieldNoSpaces. तब, सभी उनके मूल्यों का एक प्रसिद्ध मुहावरा है करने के लिए एक पुराने कंप्यूटर खेल से सेट है."
हम उस फ़ील्ड से एक मान असाइन करना का आश्वासन दिया है और कोई अन्य कर रहे हैं जब वहाँ केवल हो जाएगा से एक फ़ील्ड एक शीर्षक के साथ फार्म पर बराबर करने के लिए "DefaultMeFieldNoSpaces".
एक क्षेत्र जिसका नाम रिक्त स्थान में यह है के बारे में क्या? यह लगभग एक ही है:
<स्क्रिप्ट प्रकार ="पाठ/जावास्क्रिप्ट"> $(समारोह() { $(' इनपुट[शीर्षक = स्पेस के साथ फ़ील्ड असाइन करें]').attr( {मान: ' आप अंश twisty भूलभुलैया में हैं, सब एक जैसे। '}); }); </स्क्रिप्ट>
मुझे लगता है कि यह एक दृष्टिकोण है काफी सुरक्षित है, जिसका अर्थ है कि हम क्षेत्र है कि हम चाहते हैं और केवल क्षेत्र ढूँढने में सक्षम होना चाहिए हम चाहते हैं. अगर तुम देखो HTML SharePoint हमें दे रहा है, यह की तरह गन्दा है:
<इनपुट नाम= "ctl00$ एम$ g_bdb23c2c_fde7_495f_8676_69714a308d8e$ ctl00$ ctl04$ ctl02$ ctl00$ ctl00$ ctl04$ ctl00$ ctl00$ TextField" प्रकार"पाठ =" maxlength"255 =" आईडी"ctl00_m_g_bdb23c2c_fde7_495f_8676_69714a308d8e_ctl00_ctl04_ctl02_ctl00_ctl00_ctl04_ctl00_ctl00_TextField =" शीर्षक"DefaultMeFieldNoSpaces =" वर्ग"एमएस-लंबी =" />
"शीर्षक" एक पहचानने योग्य है और उम्मीद है कि अद्वितीय विशेषता हम विशिष्ट स्तंभ जिसमें हम हमारे मनमाना मान असाइन करने के लिए चाहते हैं की पहचान में मदद करने के लिए के रूप में बाहर खड़ा है.
यह एक मूलभूत संकल्पना है. किसी फ़ील्ड में किसी मनमाने ढंग से जिस तरह से इस तरह की स्थापना किसी भी पुरस्कार को जीतने के लिए नहीं जा रहा है. हालांकि, अगर हम और अधिक दिलचस्प फार्म तर सामान करना चाहते हैं (हम में से जो सब हमेशा करते हैं करना चाहते हैं, बेशक, ना हम बर्तन धोने समाप्त करने के बाद), जैसे "स्वत: का मान पर आधारित फ़ील्ड बी" का मान परिवर्तित करें "फ़ील्ड एक", हम (मैं) इन बातों को जानने की जरूरत.
मुझे लगता है कि शीर्षक के माध्यम से एक असली उपयोगी यहाँ मान प्राप्त करने के लिए हमारी सबसे अच्छा मौका है, कम से कम पाठ फ़ील्ड्स के लिए. वहाँ एक बेहतर हो सकता, और अधिक विश्वसनीय दृष्टिकोण. अगर मैं यह पता, मैं इस पोस्ट अद्यतन हूँ. यदि आप एक बेहतर तरीका है पता, कृपया एक टिप्पणी छोड़ दें।</अंत>
</अंत>
मेरे ब्लॉग के लिए सदस्यता लें.
मेरे चहचहाना पर का पालन करें http://www.twitter.com/pagalvin
हाय पॉल – मैं अपनी पोस्ट भर में आया था whilst के लिए एक ऐसी ही समस्या पर शोध :-
नया कैलेंडर की घटनाओं के लिए एक डिफ़ॉल्ट अवधि सेट करना.
http://blog.pentalogic.net/2009/09/setting-default-duration-for-new-calender-events/
नया प्रपत्र पर स्क्रिप्ट हो रही के बारे में एक साफ चाल है – अपनी नहीं spjqueryfield या spff, लेकिन एक त्वरित हैक के लिए अपनी महान रूप में होशियार.
Christophe, लिंक के लिए धन्यवाद!
Oskar, क्योंकि मैं ही बस इसे चारों ओर खेलने के लिए प्रयोग कर शुरू कर दिया है मैं एक दृष्टिकोण है अभी तक नहीं है. मैं इसे एक उत्पादन परिवेश में उपयोग करने के लिए शुरू के रूप में मैं निश्चित रूप से मेरे अनुभव के बारे में लिखना होगा.
Spjqueryfield के लिए कड़ी के लिए धन्यवाद.
पॉल, संपादित करें पेज में जावास्क्रिप्ट इंजेक्शन लगाने के लिए अपने दृष्टिकोण क्या है? ऐसा करने के एक deployable में, सरल तरीके से मुश्किल सा है, के रूप में दूर के रूप में मैं चिंतित हूँ. आप वास्तव में प्रत्येक समय कोई कस्टम प्रपत्र बनाने के लिए है नहीं करना चाहिए… मुझे लगता है कि इस, http://spjqueryfield.codeplex.com/ , एक अच्छी शुरुआत है. इसे एक बार तैनात, तो जरूरत के रूप में पुन: उपयोग करें…
पॉल एक Codeplex परियोजना SharePoint प्रपत्र फ़ील्ड्स में हेर-फेर के बारे में है:
http://spff.codeplex.com/