بایگانی برچسب: XSLT

XSLT و نمونه های جی کوئری

من انجام داده اند بسیاری از XSLT و jQuery و فکر من یک قطعه چند که دیگران ممکن است مفید باشد در آینده به اشتراک گذاری.

مثال 1: ساطع جاوا اسکریپت ساده / از jQuery در XSLT:

<XSL:بازی قالب = "چیزی" XML:فضا = "حفظ">

  <!– مسدود کردن پرس و جو دوستانه زمینه فیلتر های پنهان –>
  <نوع اسکریپت = "متن / جاوا اسکریپت">
    $(سند).آماده(تابع(){
      $("# QueryFriendlyFilters").وال("خالی");
    });
  </خط>

</XSL:قالب>

این بیت از خود ساطع میکند، برخی از جاوا اسکریپت است که منتظر این صفحه را به پایان برساند در حال بارگذاری (به دلیل $(سند).آماده(...)) و پس از آن مجموعه ارزش یک فیلد پنهان QueryFriendlyFilters به ​​ارزش ادبی "خالی" به نام.

مثال 2: استفاده <XSL:اگر> برای بررسی "بیشتر از",  "کمتر از", غیره.

<XSL:بازی قالب = "چیزی" XML:فضا = "حفظ">

  <شناسه DIV = "fdcAllFilters>
 
    <XSL:اگر تست = "@ تعداد>0">
      <کلاس دهانه = "fdcFilterLabel>فیلترهای کنونی:</محدوده>
    </XSL:اگر>

    <!– بیشتر چیزهای اتفاق می افتد در اینجا. –>

</XSL:قالب>

قطعه فوق را چک میکند تا ببینید که آیا یک ویژگی به نام "تعداد" از "عنصر" چیزی بزرگتر از صفر است.  XML پشت این خواهد بود چیزی شبیه:"

<چیزی تعداد = "5" />

مثال 3: تکرار را از طریق تمام عناصر, interspersing تماس جی کوئری.

<!– تکرار را از طریق همه فیلتر و نمایش صحیح  لینک ها. –>
<XSL:برای هر یک را انتخاب کنید = "UserFilter">

  <یک کلاس = "FilterHref" یک عکاس هنگام عکسبرداری = "جاوا اسکریپت:mySubmitPage(‘RemoveUserFilter’,'{@ID}')">[X]</a>

  <کلاس دهانه = "fdcFilterLabel><XSL:ارزش را انتخاب کنید = "@ FilterValue" /></محدوده>

  <نوع اسکریپت = "متن / جاوا اسکریپت">

    $(سند).آماده(تابع(){
        <XSL:متن><![CDATA[$("# QueryFriendlyFilters").وال( ($("# QueryFriendlyFilters").وال() + " ]]></XSL:متن>\"<XSL:ارزش را انتخاب کنید = "@ FilterValue" />\"<XSL:متن><![CDATA["));]]></XSL:متن>
    });

  </خط>

</XSL:و هر>

قطعه فوق پیچیده ترین و آسان به آن را انجام دهد ممکن است وجود داشته باشد.

XML پشت این به نظر می رسد، تقریبا مثل این:

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

این قطعه در حال تکرار از طریق <UserFilter> گره. 

این برای اولین بار از خود ساطع میکند، برچسب Anchor که زمانی که کلیک فراخوانی یک تابع جاوا اسکریپت است که در حال حاضر در صفحه, "mySubmitPage" عبور می کند و ارزش ویژگی در <UserFilter> گره به نام "ID". 

سپس آن را از خود ساطع میکند، برخی از jQuery است که انتظار صفحه برای بارگذاری.  این جی کوئری به روز رسانی فیلد پنهان "QueryFriendlyFilters" با اضافه کردن ارزش ویژگی FilterValue را به نام.  توجه داشته باشید همه دیوانه <XSL:متن> و <![CDATA[ ... ]]> چیز.

که در آن است, امیدوارم آن کمک می کند!

</پایان>

مشترک شدن در وبلاگ من.

من در توییتر در http://www.twitter.com/pagalvin

بی وقفه تودرتو <DIV> برچسب ها و jQuery

این به نظر می رسد چنین موضوع عجیب و غریب, من مطمئن هستم که آن واقعا ارزشش وبلاگ نویسی در مورد, اما که من قبل از متوقف هرگز, بنابراین در اینجا ما به لبخند

من کار کردن بر روی یک پروژه که در آن من کشیدن برخی از داده ها از یک جستجو, بسته بندی آن را به یک پیام XML و پس از آن که XML در نهایت به HTML از طریق XSLT تبدیل شده است.  بسیاری از jQuery وجود دارد, یک بیت از آن پیاده سازی برخی از قابلیت tabbing.  هنگامی که شما بر روی یک تب کلیک کنید (واقعا, a <DIV>), جی کوئری فراخوانی مخفی() و نشان می دهد() در divs مختلف (بار اولیه صفحه دریافت تمام مطالب بنابراین هیچ postback های در این مورد وجود دارد).

دسته ساعت پیش, تب سوئیچینگ منطق شروع به رفتار نامنظم و آن را نمی خواهد یکی از زبانه ها من نشان می دهد.  من در نهایت آن را دنبال می کردن به این واقعیت که اینترنت اکسپلورر (حداقل) فکر می کردم که <DIV> برچسب های تو در تو دور, مراتب عمیق تر از نوار ابزار توسعه دهنده intended.The را نشان می دهد:

-<شناسه DIV = "Tab1Content و">
  -<DIV>
    -<DIV>
      -<شناسه DIV = "Tab2Content و">
        -<DIV>
           ..............................
                   </DIV>  <در نهایت نشان دادن آن را به تمام راه را در اینجا بسته شد!

پس, اگر من $("# Tab1Content").پنهان کردن(), من هم می خواهم با Tab2 پنهان و من هرگز می تواند Tab2 نشان می دهد اگر من نیز Tab1 نشان می دهد.  کپی و جا به جا من کد بالا را در ویژوال استودیو و همه پوشش دیو نشان داد تا سادگی, درست مثل آنها قرار بود به انجام, به دنبال شبیه به این:

-<شناسه DIV = "Tab1Content و">
  +<DIV>
  +<DIV>
-<شناسه DIV = "Tab2Content و">
  +<DIV>
  +<DIV>

من سرم را در مقابل دیوار در حالی که برای ضرب و شتم و متوجه شده است که در کد HTML غیر واقعی تولید در بسیاری از خالی <DIV> برچسب ها, مانند:

<بدن>

  <شناسه DIV = "Tab1Content و">

    <دیو شناسه = "ROW1" />
    <دیو شناسه = "ROW2" />

  </DIV>

  <شناسه DIV = "Tab2Content و">

    <دیو شناسه = "ROW1" />
    <دیو شناسه = "ROW2" />

  </DIV>

</بدن>

(است ساده waaaaaaaaaaaay.  تگ div خالی کاملا معتبر هستند. برخی از من <DIV> برچسب های کامل از محتوا, اما بسیاری دیگر نبودند.  من به تحقق آمد که من <XSL:و هر> دستورات انتشار تگ div فرم کوتاه زمانی که XSL:برای هر 'پیدا کردن هر گونه داده است.  من نظر HTML به خروجی را مجبور, به عنوان نشان داده شده است:

image

 

پس از من که, تمام DIV اندود سادگی و سوئیچینگ تب من شروع به کار.

مثل همیشه, من امیدوارم که این کمک می کند تا کسی که در خرج کردن.

</پایان>

مشترک شدن در وبلاگ من.

من در توییتر در http://www.twitter.com/pagalvin

مثال: XSLT ایجاد یک عکاس هنگام عکسبرداری HTML

من کمی از مسائل XSL به تازگی و فکر من می خواهم با هم یک نمونه برای مراجعات بعدی که ممکن است از ارزش را به همه ما XSLT-ERS در اینترنت زندگی می کنند باشد.

در نظر بگیرید XML زیر:

<تعداد FdcSearchTabsCollection = "2">
  <برچسب SearchTab = "صنعت" SortOrder = "برچسب" 00 = "صنایع" SearchConstraints های = "contenttype:صنعت" TabID = "831b2a74-98c4-4453-8061-86e2fdb22c63" />
  <برچسب SearchTab = "تمرین" SortOrder = "برچسب" 01 = "تمرین" SearchConstraints = "contenttype:PracticeGroups" TabID = "678e206b-6996-421f-9765-b0558fe1a9c0" />
</FdcSearchTabsCollection>

قطعه زیر XSL، یک لیست مرتب شده از زبانه hrefs تولید:

<XSL:بازی قالب = "FdcSearchTabsCollection با" XML:فضا = "حفظ">
   
    <!– "همه" تب –>
    <یک عکاس هنگام عکسبرداری = "جاوا اسکریپت:ViewTab(‘All’)">مشاهده همه</a>
   
    <!– هر یک از زبانه های فردی –>
    <!– تکرار را از طریق همه زبانهها و نمایش صحیح  لینک ها. –>
    <XSL:برای هر یک را انتخاب کنید = "SearchTab">
      <XSL:مرتب کردن بر اساس انتخاب = "@ SortOrder" />

      …
      <یک عکاس هنگام عکسبرداری = "جاوا اسکریپت:ViewTab('{@ TabID}')"><XSL:ارزش را انتخاب کنید = "@ برچسب" /></a>
    </XSL:و هر>

    <برزیلی /> 
   

   </XSL:قالب>

در اینجا آنچه در آن در SharePoint به نظر می رسد:

SNAGHTML78aa2cb

 

 

</پایان>

مشترک شدن در وبلاگ من.

من در توییتر در http://www.twitter.com/pagalvin