Tag Archives: XSLT

XSLT और jQuery नमूने

मैं XSLT और jQuery और सोचा कि मैं हिस्सा होता है कि दूसरों के भविष्य में उपयोगी पा सकते हैं के कुछ टुकड़े का एक बहुत कर रहा है.

उदाहरण 1: सरल जावास्क्रिप्ट का उत्सर्जन / XSLT में jQuery:

<xsl:टेम्पलेट मैच "कुछ =" xml:अंतरिक्ष = "" की रक्षा>

  <!– रिक्त क्वेरी अनुकूल फिल्टर छुपी हुई फ़ील्ड बाहर –>
  <स्क्रिप्ट प्रकार = "पाठ/जावास्क्रिप्ट">
    $(दस्तावेज़).तैयार(समारोह(){
      $("#QueryFriendlyFilters").वैल("खाली");
    });
  </स्क्रिप्ट>

</xsl:टेम्पलेट>

कि थोड़ा कुछ जावास्क्रिप्ट है कि पेज लोडिंग समाप्त करने के लिए इंतजार कर रहा है उत्सर्जन करता है (की वजह $(दस्तावेज़).तैयार(…)) और तब सेट किसी छुपे फ़ील्ड का मान QueryFriendlyFilters "खाली" अनलंकृत मान के लिए नामित.

उदाहरण 2: का प्रयोग करें <xsl:अगर> "से अधिक" की जांच करने के लिए,  "कम से कम", आदि.

<xsl:टेम्पलेट मैच "कुछ =" xml:अंतरिक्ष = "" की रक्षा>

  <div id = "fdcAllFilters">
 
    <xsl:यदि test="@Count>0">
      <स्पैन वर्ग = "fdcFilterLabel">मौजूदा फ़िल्टर्स:</काल>
    </xsl:अगर>

    <!– यहाँ और अधिक सामान होता है. –>

</xsl:टेम्पलेट>

इसके बाद के संस्करण टुकड़ा अगर "" कुछ"तत्व की गिनती" नामक एक विशेषता शून्य से अधिक है देखने के लिए जाँच करता है।  XML इस के पीछे की तरह कुछ होगा:”

<कुछ गिनती "5" = />

उदाहरण 3: सभी तत्वों के माध्यम से पुनरावृति, jQuery कॉल interspersing.

<!– सभी फ़िल्टर के माध्यम से पुनरावृति और सही प्रदर्शित करें  कड़ियाँ. –>
<xsl:के लिए प्रत्येक चयन करें = "UserFilter">

  <एक वर्ग "FilterHref =" href = "जावास्क्रिप्ट:mySubmitPage('RemoveUserFilter','{@ ID}’)">[एक्स]</एक>

  <स्पैन वर्ग = "fdcFilterLabel"><xsl:select="@FilterValue"/ मान का></काल>

  <स्क्रिप्ट प्रकार = "पाठ/जावास्क्रिप्ट">

    $(दस्तावेज़).तैयार(समारोह(){
        <xsl:पाठ><![CDATA[$("#QueryFriendlyFilters").वैल( ($("#QueryFriendlyFilters").वैल() + " ]]></xsl:पाठ>\"<xsl:select="@FilterValue"/ मान का>\"<xsl:पाठ><![CDATA["));]]></xsl:पाठ>
    });

  </स्क्रिप्ट>

</xsl:के लिए प्रत्येक>

इसके बाद के संस्करण टुकड़ा सबसे जटिल है और इसे करने के लिए आसान तरीके हो सकते हैं.

XML इस के पीछे मोटे तौर पर इस तरह दिखता है:

<UserFilter ID "123" FilterValue = "xyzzy" = />

यह टुकड़ा के माध्यम से iterating है <UserFilter> नोड्स। 

यह पहली बार एक लंगर का उत्सर्जन करता कि जब क्लिक किया टैग पृष्ठ पर पहले से ही है एक जावास्क्रिप्ट फ़ंक्शन invokes, "mySubmitPage" और एक विशेषता के मान पर गुजरता है <UserFilter> नोड "ID" नाम दिया। 

यह तो कुछ jQuery के लिए पृष्ठ लोड करने के लिए इंतजार कर रहा है उत्सर्जन करता है।  उस jQuery छुपी FilterValue विशेषता के मान जोड़कर "QueryFriendlyFilters" नामक फ़ील्ड अद्यतन करता है।  नोट सभी पागल <xsl:पाठ> और <![CDATA[ … ]]> सामान.

यह है कि, आशा है कि यह मदद करता है!

</अंत>

मेरे ब्लॉग के लिए सदस्यता लें.

मेरे चहचहाना पर का पालन करें http://www.twitter.com/pagalvin

अंतहीन को नेस्ट करना <div> टैग और jQuery

यह ऐसी एक oddball विषय की तरह लगता है, मुझे यकीन है कि यह वास्तव में के बारे में ब्लॉगिंग के लायक है नहीं कर रहा हूँ, लेकिन कि कभी नहीं से पहले मुझे बंद कर दिया है, तो यहाँ हम चले मुस्कुराओ

मैं जहाँ मैं एक खोज से कुछ डेटा खींच रहा हूँ एक परियोजना पर काम कर रहा हूँ, यह एक XML संदेश और उसके बाद उस XML में पैकेजिंग अंततः XSLT के माध्यम से HTML में तब्दील है।  JQuery का एक बहुत कुछ शामिल है, जो की एक बिट कुछ tabbing कार्यक्षमता लागू करता है।  जब आप कोई टैब पर क्लिक करें (वाक़ई, एक <div>), .hide jQuery invokes() और .show() पर विभिन्न divs (तो इस मामले में कोई postbacks वहाँ रहे हैं के लिए प्रारंभिक पृष्ठ लोड सभी सामग्री डाउनलोड).

घंटे पहले की एक गुच्छा, टैब स्विचन तर्क erratically व्यवहार करना शुरू कर दिया और यह मेरी टैब्स में से एक दिखाना नहीं होता।  मैं अंततः के लिए नीचे इस तथ्य यह है कि इंटरनेट एक्सप्लोरर ट्रैक (कम से कम) सोचा कि <div> टैग तक नेस्ट किया हुआ, इरादा की तुलना गहराई तक।डेवलपर उपकरण पट्टी दिखाना होगा:

-<div id = "Tab1Content">
  -<div>
    -<div>
      -<div id = "Tab2Content">
        -<div>
           …………………………
                   </div>  <-अंत में यह दिखा रहा है यहाँ नीचे सभी तरह बंद हो गया था!

तो, अगर मैंने किया था एक $("#Tab1Content").छिपाएँ(), मैं भी Tab2 छिपा होगा और मैं अगर मैं भी Tab1 शो फ्लॉप Tab2 कभी नहीं दिखा सकता है।  मैं नकल की है और दृश्य स्टूडियो और इसे ऊपर div अस्तर के सभी अच्छी तरह से पता चला में कोड चिपकाया, की तरह वे कर रहे हो करने के लिए चाहिए थे, इस तरह की तलाश:

-<div id = "Tab1Content">
  +<div>
  +<div>
-<div id = "Tab2Content">
  +<div>
  +<div>

मैं थोड़ी देर के लिए दीवार के खिलाफ मेरे सिर को हरा और देखा था कि वास्तविक HTML में खाली के एक बहुत कोड जनरेट कर रहा है <div> टैग, की तरह:

<शरीर>

  <div id = "Tab1Content">

    <div id = "row1" />
    <div id = "row2" />

  </div>

  <div id = "Tab2Content">

    <div id = "row1" />
    <div id = "row2" />

  </div>

</शरीर>

(इसके बाद के संस्करण waaaaaaaaaaaay oversimplified है।  खाली div टैग पूरी तरह से मान्य हैं. उनमें से कुछ मेरे <div> टैग सामग्री से भरा रहे थे, लेकिन कई और अधिक नहीं थे।  मैं साकार करने आया था कि मेरी <xsl:के लिए प्रत्येक> निर्देशों के लघु-रूप उत्सर्जक थे div टैग जब xsl:के लिए प्रत्येक नहीं था ' किसी भी डेटा को खोजने।  मैं एक HTML टिप्पणी आउटपुट में मजबूर, के रूप में दिखाया गया:

image

 

करने के बाद मैंने किया है कि, सभी div को अच्छी तरह से तैयार किया और मेरी टैब स्विचन काम शुरू कर दिया.

हमेशा की तरह, मुझे आशा है कि इस मदद करता है किसी को एक चुटकी में.

</अंत>

मेरे ब्लॉग के लिए सदस्यता लें.

मेरे चहचहाना पर का पालन करें http://www.twitter.com/pagalvin

उदाहरण: XSLT बनाने HTML Href है

मैं हाल ही में XSL सामान की एक बिट कर दिया गया है और सोचा कि मैं एक साथ मेरा भविष्य में संदर्भ के लिए एक नमूना रख देते थे और हम सब के लिए मूल्य के XSLT नेताओं में internets रह कर हो सकता है कि.

निम्न XML पर विचार:

<FdcSearchTabsCollection गणना = "2">
  <SearchTab लेबल = "उद्योग" SortOrder = "00" Label = "उद्योगों" SearchConstraints = "contenttype =:उद्योग" TabID = "831b2a74-98c4-4453-8061-86e2fdb22c63" />
  <SearchTab लेबल = "प्रथाओं" SortOrder = "01" Label = "प्रथाओं" SearchConstraints = "contenttype =:PracticeGroups" TabID = "678e206b-6996-421f-9765-b0558fe1a9c0" />
</FdcSearchTabsCollection>

निम्न XSL स्निपेट एक हल hrefs टैब्स की सूची उत्पन्न होगी:

<xsl:टेम्पलेट मैच "FdcSearchTabsCollection =" xml:अंतरिक्ष = "" की रक्षा>
   
    <!– "सभी" टैब –>
    <एक href = "जावास्क्रिप्ट:ViewTab('सभी')">सभी देखें</एक>
   
    <!– प्रत्येक व्यक्तिगत टैब –>
    <!– सभी टैब के माध्यम से पुनरावृति और सही प्रदर्शित करें  कड़ियाँ. –>
    <xsl:के लिए प्रत्येक चयन करें = "SearchTab">
      <xsl:select="@SortOrder"/ सॉर्ट करें>

      …
      <एक href = "जावास्क्रिप्ट:ViewTab(‘{@TabID}’)"><xsl:select="@Label"/ मान का></एक>
    </xsl:के लिए प्रत्येक>

    <br /> 
   

   </xsl:टेम्पलेट>

यहाँ क्या यह SharePoint में की तरह दिखता है:

SNAGHTML78aa2cb

 

 

</अंत>

मेरे ब्लॉग के लिए सदस्यता लें.

मेरे चहचहाना पर का पालन करें http://www.twitter.com/pagalvin