Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Behöver hjälp med sökfunktionen i javascript och xml

Postades av 2014-02-22 21:18:04 - Nermin Imsirevic, i forum javascript/dhtml, Tråden har 3 Kommentarer och lästs av 3235 personer

Hej på er!

Försöker få sök funktionen att fungera. Eftersom vi jobbar i sitevision måste vi antingen göra det via AD eller XML och js. Eftersom AD är ingenting man kan förlita sig på så valde jag att köra javascript.

jag har följande kod:

xml filen

 <?xml version="1.0" encoding="utf-8"?>
<indices>
	<index>
		<namn><![CDATA[ John ]]></namn>
		<enamn><![CDATA[ Doe ]]></enamn>
		<befattning><![CDATA[ teacher ]]></befattning>
	</index>
	<index>
		<namn><![CDATA[ Paul ]]></namn>
		<enamn><![CDATA[ Paulsson ]]></enamn>
		<befattning><![CDATA[ administration ]]></befattning>
	</index>
	
</indices>


Sedan kommer javascript filen:
$(document).ready(function(){

	//GLOBAL VAR
	var XMLSource = $('#data').attr('xmlData');
	var keyword = '';
	var catType = '';
	var pub = '';
						   
	var i = 0;
   
	$("#searchButton").click(function() {
		keyword = $("input#term").val();
		catType = $("#category option:selected").val();
		
		//Reset any message
		var errMsg = '';
		pub = '';
	
		if ( keyword == '' ) { errMsg += 'Ange sökord' + '\n'; }
		else if ( catType == 'none' ) { errMsg += 'Ange kategori' + '\n'; }
		else { searchThis(); }

		if ( errMsg != '' ) {
			pub += '<div class="error">' + '\n';
			pub += errMsg;
			pub += '</div>' + '\n';
		}
		
		//Show error
		$('#result').html( pub );

	});
	
	function searchThis() {				
		$.ajax({
			type: "GET",
			url: XMLSource,
			dataType: "xml",
			success: function(xml) { loadPublication (xml) }	
		});
	}
	
	function loadPublication (xmlData) {
		i = 0;
		var row;
		
		var searchExp = "";
		
		$(xmlData).find('index').each(function(){
			
			var namn = $(this).find('namn').text();
			var enamn = $(this).find('enamn').text();
			var befattning = $(this).find('befattning').text();
			
			
			var exp = new RegExp(keyword,"gi");
			
			
			if ( catType == 'namn' ) { searchExp = namn.match(exp); }
			else if ( catType == 'enamn' ) { searchExp = enamn.match(exp); }
			else if ( catType == 'befattning' ) { searchExp = befattning.match(exp); }
			
			if ( searchExp != null ) {
				
				//Start building the result
				if ((i % 2) == 0) { row = 'even'; }
				else { row = 'odd'; }
				
				i++;				
				
				pub += '<tr class="row ' + row + '">' + '\n';
				pub += '<td valign="top" class="col1">' + namn + '</td>' + '\n';	
				pub += '<td valign="top" class="col2">' + enamn + '</td>' + '\n';	
				pub += '<td valign="top" class="col3">' + befattning + '</td>' + '\n';	
				pub += '</tr>' + '\n';
			}	
		});
				
		if ( i == 0 ) {
			pub += '<div class="error">' + '\n';
			pub += 'Inga träffar' + '\n';	
			pub += '</div>' + '\n';
			
			
			$('#result').html( pub );
		}
		else {
			
			showResult ( pub );
		}
	}
	
	function showResult (resultSet) {

		
		pub = '<div class="message">Det finns ' + i + ' träffar!</div>';
		pub += '<table id="grid" border="0">' + '\n';
		pub += '<thead><tr>' + '\n';
		pub += '<th class="col1">Namn</th>' + '\n';
		pub += '<th class="col2">Efternamn</th>' + '\n';
		pub += '<th class="col3">Befattning</th>' + '\n';
		pub += '</tr></thead>' + '\n';
		pub += '<tbody>' + '\n';
		
		pub += resultSet;
		
		pub += '</tbody>' + '\n';
		pub += '</table>' + '\n';
		
		
		$('#result').html(pub)
		
		
	}
});


och html filen
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta content="text/html; charset=ISO-8859-1" http-equiv="content-type">
<title>Search</title>
<link rel="stylesheet" href="css/default.css" />
<script type="text/javascript" src="js/jquery-1.4.2.min.js"></script>
<script id="data" type="text/javascript" src="js/search.js" xmlData="data/data.xml"></script>
</head>
<body>
<div id="controller">
  <label>Search Term:
    <input type="text" id="term">
  </label>
  <label>
    <select name="category" id="category">
      <option value="none">Please Select a Type</option>
      <option value="namn">Namn</option>
      <option value="enamn">efternamn</option>
      <option value="befattning">befattning</option>
    </select>
  </label>
  <input name="Search" type="button" id="searchButton" value="Search">
</div>
<div id="result">&nbsp;</div>
</body>
</html>


Jag får det helt enkelt inte att fungera!
Tacksam för all hjälp man kan få!

MVH


Svara

Sv: Behöver hjälp med sökfunktionen i javascript och xml

Postades av 2014-02-23 17:53:33 - Pelle Johansson

Hej, tyvärr har jag inget bra svar på detta. Hoppas någon annan kan bidraga med hjälp här.


Svara

Sv: Behöver hjälp med sökfunktionen i javascript och xml

Postades av 2014-02-24 05:45:42 - Henry Rune Tk

Hej!

Jag har testat scriptet och det verkar funka i FF, Chrome, och IE utan problem.

Kontrollera det följande:
1. Att du kör på en webbserver, webbhotell, eller lokalkonfigurerad HTTP server.
- Dvs. ajax:anropet begär HTTP request att få data.xml:filen. Då krävs en HTTPtjänst.

2. Att alla referenser ligger i rätt mapp.
- data.xml ska ligga i /data mappen,
- jQuery version 1.4.2 samt search.js ska ligga i /js mappen.


Svara

Sv:Behöver hjälp med sökfunktionen i javascript och xml

Postades av 2014-02-24 08:19:22 - Nermin Imsirevic

Hej Henry och Pelle! Tack för hjälpen...

Nu har jag kollat igen och jag får "inga träffar" om jag söker på namn men befattning och efternamn fungerar... I fredags ville inte de 2 fungera men jag fick träffar på namn... är helt snurrig i huvudet ....

Som att den aldrig kollar namn på något sätt eller vill inte parsa denna delen.

ska kolla koden igen och försöka komma på vad är det som har gått snett där.

MVH

PS: hittade felet!

Det var felnamngivet variabel ... Nu fungerar det som det skal!


Svara

Nyligen

  • 18:42 Hvor finder man håndlavede lamper
  • 18:41 Hvor finder man håndlavede lamper
  • 16:36 Allt du behöver veta om keramiskt
  • 16:14 Vem anlitar man egentligen när tak
  • 16:14 Vem anlitar man egentligen när tak
  • 16:13 Vem anlitar man egentligen när tak
  • 11:52 Noen erfaring med uttak hos Mostbe
  • 11:51 Noen erfaring med uttak hos Mostbe

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 570 574
27 958
271 741
5 735
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies