Beskrajno Gniježđenje <div> Oznake i Jquery

Ovo se čini kao takvog otkačen temu, Nisam siguran da je stvarno vrijedno bloganje o, ali to nikada me zaustavio prije, pa ovdje mi ići Osmijeh

Radim na projektu gdje sam povlačenjem neke podatke iz pretraživanja, to pakiranje se u XML poruke, a zatim da je XML konačnici se pretvara u HTML-u preko XSLT.  Postoji puno jQuery uključeni, jedan malo koji implementira neke tabbing funkcionalnost.  Kad kliknete na kartici (stvarno, a <div>), jQuery zaziva. skrivanje() a. serija() na raznim divs (početna stranica učitavanje preuzima sav sadržaj tako da ne postoje postbacks u ovom slučaju).

Gomila sati prije, Kartica prebacivanje logika počeo ponašati neizvjesno, a to ne bi pokazati jedan od mojih karticama.  I u konačnici to trag na činjenicu da Internet Explorer (barem) Mislio da je <div> tags uklopljeni sada, daleko dublje od intended.The developer alatnoj traci će se prikazati:

-<div id = "Tab1Content">
  -<div>
    -<div>
      -<div id = "Tab2Content">
        -<div>
           ..............................
                   </div>  <-Napokon pokazuje da je zatvorena skroz ovdje dolje!

Tako, ako jesam $("# Tab1Content").sakriti(), Također bih sakriti Tab2 a ja nikad ne bi mogla pokazati Tab2 ako nisam također pokazuju TAB1.  Ja kopirati i zalijepiti kôd se u Visual Studio, a to su pokazali sve DIV-a sluznice se lijepo, baš kao što su trebali raditi, izgleda ovako:

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

Pobijedio sam glavom o zid za vrijeme i primijetio da je u aktualnom HTML koda je generiranje puno prazna <div> tags, kao:

<tijelo>

  <div id = "Tab1Content">

    <div id = "ROW1" />
    <div id = "ROW2" />

  </div>

  <div id = "Tab2Content">

    <div id = "ROW1" />
    <div id = "ROW2" />

  </div>

</tijelo>

(Gore je waaaaaaaaaaaay pojednostavni.  Prazne div oznake su totalno vrijede. Neki od mojih <div> tags bili puni sadržaj, , ali mnogo više nije bilo.  Došao sam do spoznaje da je moja <XSL:za-svakog> Smjernice su emitiranjem na kratki upitnik div oznake kada XSL:za-jedni nije 'naći nikakve podatke.  Sam prisiljen HTML komentar na izlazu, kao što je prikazano:

image

 

Nakon što sam to učinio, Svi div je postrojilo se lijepo i moja kartica prebacivanje počeo raditi.

Kao i uvijek, Nadam se da ovo pomaže netko u slučaju krajnje nužde.

</kraj>

Pretplatite se na moj blog.

Slijedite me na Twitter-u http://www.twitter.com/pagalvin

Quick Fix: "Naziv vrste sadržaja '$ resursi:ReportServerResources … ne smije sadržavati … posebni znakovi”

Ja sam proveo neko vrijeme čišćenja SharePoint 2010 Mjesto i jedan od čišćenja pitanja odnosi se na oštećena / ispravno instaliran SQL Server Izvješće Usluge problem.  Problem je nastao kada je jedan od mojih kolega pokušao spasiti mjesto kao predložak, a zatim stvoriti stvoriti novo web temeljen na tom predlošku.  Pohranjivanju radio u redu, ali kad je pokušala stvoriti novu stranicu, SharePoint prikazuje sljedeću poruku o pogrešci:

Pogreška

Imenom vrsta sadržaja '$ resursi:ReportServerResources,DataSourceContentTypeName;'Ne može sadržavati: \ / : * ? " # % < > { } | ~ & , dva uzastopna razdoblja (..), ili posebnih znakova kao što su kartice.

Evo screen cap:

 

image

Imao sam pogled na vrste sadržaja u mjestu i pronašao ovu:

image

Te vrste sadržaja jasno su nezdravi.

Ovo pitanje se čini da se puno na internets i tamo se ne čini da se jedan konsenzus o tome kako ga riješiti.  Našao sam zgodan tablicu koja zacrtao loše imena vrste sadržaja dobrih imena vrsta sadržaja ovdje: http://social.technet.microsoft.com/Forums/en-ZA/sharepoint2010programming/thread/cb03e866-8184-4943-acfe-cafffa1b8b7a.  Ja ih ručno ažurirati thusly:

image

(BrightStarr u ime očito izborno, ali to ne može škoditi Osmijeh )

To mi je omogućilo stvaranje novog predloška i ne razbiti ništa na drugim mjestima, uključujući i neke stvari koje PerformancePoint Server potpuno drugačija skupina ljudi radili.  Bio sam tada u mogućnosti stvoriti novu stranicu na predlošku.  Uspjeh!

Nisam siguran da je to 100% otopina, ali je dobio mene i svi koji su uključeni prošlosti ovog dosadne pogreške.  Ako ne mogu naći ništa novo, Ja ću objaviti ažuriranje.  Moja nervoza proizlazi iz činjenice da se ta imena ne bi trebao biti u redu na prvo mjesto i ne mijenjajući ime za prikaz, Ja ne dira unutarnju ime. 

</kraj>

Pretplatite se na moj blog.

Slijedite me na Twitter-u http://www.twitter.com/pagalvin

Jedan razlog za "kreator ovog kvara nije precizirao s razlogom.”

Ive 'bio događaj puno rada sa SharePoint potrazi u zadnje vrijeme, a posebno KeywordQuery klase, svojstva i metode.

Ako želite postaviti rezultat vratiti rezultate iznad i izvan uobičajenih osumnjičenih (pogledajte ovdje), ga dodati SelectedProperties zbirke, kao u:

myKeywordQuery.SelectProperties.Add("Xyzzy");

Puno hvala i vrh kapu Corey Roth i to iznimno korisni blog post (http://www.dotnetmafia.com/blogs/dotnettipoftheday/archive/2008/02/19/how-to-use-the-moss-enterprise-search-keywordquery-class.aspx)

U mom slučaju, "Xyzzy" nije zapravo uspio imovine.  Kad sam ga dodati SelectedProperties ionako, SharePoint je bacio jedan od mojih najdražih ikad runtime iznimke:

"Tvorac ovog kvara nije precizirao s razlogom."

Posebno mi se sviđa kapitala "r" u razumu.  To mi zvuči kao ekvivalenta. NET "Nemam usta, i moram vrištati."

</kraj>

Pretplatite se na moj blog.

Slijedite me na Twitter-u http://www.twitter.com/pagalvin

Praktična referenca: Default Rezultati KeywordQuery Traži

Kada pozvati izvršiti() Način na KeywordQuery, možete stvoriti ResultTable na temelju ResultType.RelevantResults.  Ovaj isječak koda prikazuje ono što mislim:

ResultTableCollection resultsTableCollection = myKeywordQuery.Execute();

ResultTable searchResultsTable = resultsTableCollection[ResultType.RelevantResults];

Rezultiralo stol će imati sljedeće stupce informacija: 

WorkId
Poredak
Naslov
Autor
Veličina
Put
Opis
Pisati
Sitename
CollapsingStatus
HitHighlightedSummary
HitHighlightedProperties
ContentClass
IsDocument
PictureThumbnailURL
ServerRedirectedURL

Ja izvedeni ovaj popis iz SharePoint 2010 okolina, Enterprise Edition.  Nadam se da će biti pri ruci da netko u budućnosti.

</kraj>

Pretplatite se na moj blog.

Slijedite me na Twitter-u http://www.twitter.com/pagalvin

Jedan od razloga za: "Nisam uspio izvući cab datoteka u otopini”

Dok je radio na Visual Studio web-dijela projekta danas, Ja sam manje re-org nekih datoteka koje treba staviti u mapu _layouts kao dio procesa implementacije. Posebno, Preimenovao sam je. JS datoteku iz "TypeAhead.js" do "TypeAhead(star).js "  Planiram ga ukloniti čim njegov nasljednik "TypeAhead.js" pokazuje ispravan.  Izgledalo je kao što je ovaj:

image

To je odmah izazvalo problem s Visual Studio, kada sam pokušao implementirati projekt:

Error occurred in deployment step ‘Add Solution’: Nisam uspio izvući cab datoteka u otopini.

Ispada da ne biste trebali staviti zagrade u imenima datoteka.  Uklonio sam parens i da riješio problem.

</kraj>

Pretplatite se na moj blog.

Slijedite me na Twitter-u http://www.twitter.com/pagalvin

Ipak Više jQuery–Stanovati primjer slike

Sam naslijedila web dio od klijenta stare dobavljača i ima problema veličini slike.  Slike trebaju biti 60×50 ali iz nekog razloga ak, izvorni dobavljač ih je natjerao u 42×42, tako da izgledaju squashed:

 

Dobra slika

Bad Slika

Evo označavanje (nešto pojednostavljeno):

<table Class = 'proširenog izgledi'>
  <thead>
    <tr>
      <th  width = '100′>3 Utorak</th>
    </tr>
  </thead>

  <tbody>
    <tr class = 'prognoza'>
      <td width = '100′>
        <Ulica>
          <li class = "high">Visok: 72&vi;F</Li>
          <li class = 'niska'>Nisko: 44&vi;F</Li>
          <Li Class = 'stanje'>Sunčan
            <img src =’
http://deskwx.weatherbug.com/images/Forecast/icons/localized/60×50/en/trans/cond007.png’ width = '42’ height = '42’ alt =” />
          </Li>
        </Ulica>
      </td>
    </tr>

  </tbody>

</stol>

Ćete primijetiti da, iako Put do same slike pokazuje pravilnu dimenziju (60×50) izvorni dobavljač je prisiljen u 42×42.  Zašto?  Lud.

U svakom slučaju, Htjela sam brzo i jednostavno rješenje za ovaj problem i okrenuo sam se jQuery.  Trik je pronaći sve potrebno <img> oznake.  Nisam želio da Ljenčariti s bilo kojim drugim IMG tagova (od kojih su mnogi).  Ovo malo jQuery je trik:

<skripta type = "text / javascript" src ="http://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js"></skripta>

<skripta type = "text / javascript">
     $(dokument).spreman(funkcija () {

         $(‘li.condition > IMG ').svaki(funkcija (indeks, stavka)
           
{
             $(stavka).css("Širina", "60"); 
             $(stavka).css("Visina", "50");
            });
     }); // na dokumenta opterećenja
</skripta>

To malo koda pronalazi zbirka <Li> tags čija klasa je "stanje" i <img> djeca.  Tada ponovi kroz sve to.  Izrađen poput milina.

Vjerojatno sam mogao pojednostaviti, ali nikada nisam bio tip čovjeka koji je riješio Unix π na 18 znamenke preciznost pomoću Sed i awk i nisam takav tip, ako jQuery bilo Osmijeh.

</kraj>

Pretplatite se na moj blog.

Slijedite me na Twitter-u http://www.twitter.com/pagalvin

Parsiranje XML sa LINQ

Evo primjer brzo koristeći LINQ tumačenje nekih  XML i dobiti na slatko, slatki atributi u njoj.

Evo XML želim analizirati:

<?xml version = "1,0" kodiranja = "utf-8" ?>
<DeafultConfigurationSets>
  <PageLayouts>

    <PageLayout name = "xyzzy">
      <Kartice>
        <Tab TabOrder="1" TabLabel="x" SharePointContentType="a" AdditionalConstraints="ac1"/>
        <Tab TabOrder="2" TabLabel="y" SharePointContentType="b" AdditionalConstraints="ac2"/>
      </Kartice>
    </PageLayout>

    <PageLayout name="xyzzy2">
      <Kartice>
        <Tab TabOrder="100" TabLabel="x" SharePointContentType="a" AdditionalConstraints="ac1"/>
        <Tab TabOrder="101" TabLabel="y" SharePointContentType="b" AdditionalConstraints="ac2"/>
        <Tab TabOrder="103" TabLabel="z" SharePointContentType="c" AdditionalConstraints="ac3"/>
      </Kartice>
    </PageLayout>

  </PageLayouts>
</DeafultConfigurationSets>

Želim izgraditi neke kvačice na runtime strane raščlanjivanja gore.  Moje Kartice ovisiti izgled stranice.  Ako moj izgled stranice se zove "xyzzy2" onda želim da se jezičke 100, 101 i 103 (Kartice su u <PageLayout name = "xyzzy2">).

Evo kako to radi LINQ:

var = allTabs
              iz p u
                  XElement.Parse(theXmlToParse).
                 
Elementi("PageLayouts").
                  Elementi("PageLayout")
              gdje (p.Attribute("name").Value.Equals("xyzzy2"))
              od m p.Elements("Tabs").Elementi("Tab")
              odaberite m;

          Results.Text = string.Empty;

          foreach (var aTab u allTabs)
          {
              Results.Text =
                  "Tab Order: " + aTab.Attribute("TabOrder").Vrijednost + " |" +
                  "Tab Label: " + aTab.Attribute("TabLabel").Vrijednost + " | " +
                  "SharePointContentType: " + aTab.Attribute("SharePointContentType").Vrijednost + " | " +
                  "AdditionalConstraints: " + aTab.Attribute("AdditionalConstraints").Vrijednost + "\r";
          }

U gore, varijabla "theXmlToParse" je string promjenjive, , ali možete koristiti opterećenje() Način na potoku, ako vam se sviđa.

"Rezultati" je naljepnica na web obrazac i kada se to kod izvršava, to izgleda ovako:

SNAGHTML11cd2e7c

Nisam radio kako bi Prikazane rezultate još, pa ću ostaviti da se za buduće blogu.

</kraj>

Pretplatite se na moj blog.

Slijedite me na Twitter-u http://www.twitter.com/pagalvin

SharePoint 2010 KeywordQuery i anonimnih korisnika

Ja omogućen anonimni pristup u mom mjestu isprobati dio za pretraživanje web sam razvija i da nema veliko iznenađenje, to nije dosta raditi.  Anonimni pristup je ljepušan velik dio uvijek izazov za mene.

U tom slučaju, traženje ne radi iz nekog razloga.  Bih trebao reći da je to je trčanje, ali to nije povratka nikakve rezultate.  Ja sam koristeći KeywordQuery za taj početni zaslon.

Ja sam brzo pretraživanje i ovaj blog post "sowmyancs"Došao prilično brzo: "SharePoint 2010 Traži: ne pokazuje nikakve rezultate za anonimne korisnike?"  To blog entry opisuje problem s Izvan okvira za pretraživanje ključnih riječi perspektive, ali ponašanje je slično mome - to je radio za provjerene korisnike te anonimnim korisnicima, ali anonimni korisnik dobio nikakve rezultate. 

Slijedio sam upute i praska!  To riješio moj problem.  Ja sam ne siguran što nuspojave to će imati i oni svibanj dokazati da se problem, ali kratkoročni rezultat je korisno.

Kliknite na kroz blog:

image

</kraj>

Pretplatite se na moj blog.

Slijedite me na Twitter-u http://www.twitter.com/pagalvin

SharePoint 2010 KeywordQuery i HiddenConstraints nekretnine

Ive 'bio događaj malo rada s KeywordQuery objekt u sustavu SharePoint 2010 i korištenje HiddenConstraints svojstvo.

Nisam odmah pronaći korisne informacije o tom imovinom, pa sam mislio bih točkica dolje brzo kako sam bio koristeći ga.

Koliko ja mogu reći, to je automatsko ograničenje dodan u upitu, tako da možete sortirati parka se nalazi i ne brinuti o tome.  Kao takav, to je samo još jedan ključnih riječi (ili skup ključnih riječi) i modifikatori da možete upisati se na UI kada napraviti ključne riječi za pretraživanje.  Evo primjer:

keywordQuery.HiddenConstraints = "opseg:\"Industrija " ";

Možete dodati dodatne ograničenja s prostora graničnika.

keywordQuery.HiddenConstraints = "opseg:\"Industrija " obrana ";

Gore je rekao na engleskom jeziku, "Pokrenuti upit ključne riječi u potrazi za" obrana "i nadalje, koristiti "industrija" opseg.

Evo još jedan način gledanja na njega:

image

Ive 'bio koristeći ga za pružanje ovisna o kontekstu automatsko opseg na prilagođenoj web-dijela.  Kada korisnik klikne na kartici i klikne gumb za pretraživanje, Kartica diktira određeni opseg pretraživanja.  To je radi dobro tako daleko.

</kraj>

Pretplatite se na moj blog.

Slijedite me na Twitter-u http://www.twitter.com/pagalvin

Primjer: XSLT Stvaranje HTML href-a

Ive 'bio događaj malo XSL stvari u zadnje vrijeme i mislio sam staviti zajedno uzorak za moje buduće potrebe i koji bi mogli biti od vrijednosti za sve nas XSLT-katore zaraditi za život u internets.

Razmislite o sljedećem XML:

<FdcSearchTabsCollection Count = "2">
  <SearchTab Label = "Industrija" SortOrder = "00" Label = "industrija" SearchConstraints = "contenttype:Industrija" TabID = "831b2a74-98c4-4453-8061-86e2fdb22c63" />
  <SearchTab Label = "prakse" SortOrder = "01" Label = "prakse" SearchConstraints = "contenttype:PracticeGroups" TabID = "678e206b-6996-9765-421f-b0558fe1a9c0" />
</FdcSearchTabsCollection>

Sljedeći isječak XSL će generirati popis sortiran hrefs karticama:

<XSL:Predložak utakmica = "FdcSearchTabsCollection" xml:prostor = "sačuvati">
   
    <!– "Sve" kartica –>
    <href = "javascript:PrikazTabulator(‘All’)">Vidi sve</a>
   
    <!– Svaki pojedinac kartica –>
    <!– Iteraciju kroz sve kartice i prikazati točno  linkovi. –>
    <XSL:za-svaki odaberite SearchTab = "">
      <XSL:vrsta select = "@ SortOrder" />

      …
      <href = "javascript:PrikazTabulator('{@ TabID}')"><XSL:vrijednost od = odaberite "@ znaka" /></a>
    </XSL:za-svakog>

    <br /> 
   

   </XSL:predložak>

Evo kako to izgleda u sustavu SharePoint:

SNAGHTML78aa2cb

 

 

</kraj>

Pretplatite se na moj blog.

Slijedite me na Twitter-u http://www.twitter.com/pagalvin