Εκτέλεση function μέσα στο JS Slider Script

Κώδικας, πληροφορίες, ερωτήσεις και απαντήσεις σχετικές με την JavaScript.

Συντονιστές: WebDev Moderators, Super-Moderators

Απάντηση
kapoios001
Δημοσιεύσεις: 403
Εγγραφή: 17 Φεβ 2011 12:26

Εκτέλεση function μέσα στο JS Slider Script

Δημοσίευση από kapoios001 » 27 Μάιος 2011 21:23

Γεια σας,

Στο http://civitec.gr/index.php έχω μια φόρμα search που κάνει το ερώτημα με AJAX και εμφανίζει πόσα αποτελέσματα βρέθηκαν. Το πρόβλημα είναι με το slider script selectToUISlider.jQuery.js το οποίο όταν μετακινείς την μπάρα αριστερά-δεξιά για τα πεδία Ισχύς & Μέγεθος δεν στέλνει το request στο php script ώστε να πάρω τα κατάλληλα αποτελέσματα.

Αυτό γίνεται επειδή το slider script δημιουργεί τα options on-the-fly και δεν είναι σαν HTML select options και το do_search() function που έχω κάνει εκτελείται μόνο στο onchange event, οπότε δεν το πιάνει.

Δοκίμασα να τροποποιήσω το slider script αλλά δεν έβγαλα κάποια άκρη καθώς έπαιρνα αυτό το σφάλμα στον firefox:

Κώδικας: Επιλογή όλων

Error: uncaught exception: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE)"  nsresult: "0x80004005 (NS_ERROR_FAILURE)"  location: "JS frame :: http://civitec.gr/index.php :: do_search :: line 54"  data: no]
Τι λύση υπάρχει γι' αυτό το πρόβλημα;
Ευχαριστώ.

Άβαταρ μέλους
korgr
Honorary Member
Δημοσιεύσεις: 5067
Εγγραφή: 07 Οκτ 2008 18:30
Τοποθεσία: Corinth
Επικοινωνία:

Εκτέλεση function μέσα στο JS Slider Script

Δημοσίευση από korgr » 27 Μάιος 2011 22:38

Αυτό πχ δεν σου δουλεύει;

Κώδικας: Επιλογή όλων

$('select#isxis').selectToUISlider({
	sliderOptions: {
		slide: do_search()
	}
});

kapoios001
Δημοσιεύσεις: 403
Εγγραφή: 17 Φεβ 2011 12:26

Εκτέλεση function μέσα στο JS Slider Script

Δημοσίευση από kapoios001 » 28 Μάιος 2011 11:47

Έκανα τον κώδικα έτσι (μέσα στο head):

Κώδικας: Επιλογή όλων

<script type="text/javascript">
		$&#40;function&#40;&#41;&#123;
$&#40;'select#isxis'&#41;.selectToUISlider&#40;&#123;
   sliderOptions&#58; &#123;
      slide&#58; do_search&#40;&#41;
   &#125;
&#125;&#41;;			var abc = $&#40;'select#isxis'&#41;.selectToUISlider&#40;&#41;.next&#40;&#41;;
			var abc = $&#40;'select#mege8os'&#41;.selectToUISlider&#40;&#41;.next&#40;&#41;;
			//fix color 
			fixToolTipColor&#40;&#41;;
		&#125;&#41;;
// ypoloipos kodikas
Παίρνω αυτό το σφάλμα:

Κώδικας: Επιλογή όλων

Error&#58; uncaught exception&#58; &#91;Exception... "Component returned failure code&#58; 0x80004005 &#40;NS_ERROR_FAILURE&#41;"  nsresult&#58; "0x80004005 &#40;NS_ERROR_FAILURE&#41;"  location&#58; "JS frame &#58;&#58; http&#58;//localhost/civitec/index.php &#58;&#58; do_search &#58;&#58; line 54"  data&#58; no&#93;

Άβαταρ μέλους
korgr
Honorary Member
Δημοσιεύσεις: 5067
Εγγραφή: 07 Οκτ 2008 18:30
Τοποθεσία: Corinth
Επικοινωνία:

Εκτέλεση function μέσα στο JS Slider Script

Δημοσίευση από korgr » 28 Μάιος 2011 13:36

Κώδικας: Επιλογή όλων

<script type="text/javascript">
      $&#40;function&#40;&#41;&#123;
$&#40;'select#isxis'&#41;.selectToUISlider&#40;&#123;
   sliderOptions&#58; &#123;
      slide&#58; do_search&#40;&#41;
   &#125;&#41;.next&#40;&#41;;
$&#40;'select#mege8os'&#41;.selectToUISlider&#40;&#123;
   sliderOptions&#58; &#123;
      slide&#58; do_search&#40;&#41;
   &#125;&#41;.next&#40;&#41;;
         //fix color
         fixToolTipColor&#40;&#41;;
      &#125;&#41;;
// ypoloipos kodikas 

kapoios001
Δημοσιεύσεις: 403
Εγγραφή: 17 Φεβ 2011 12:26

Εκτέλεση function μέσα στο JS Slider Script

Δημοσίευση από kapoios001 » 28 Μάιος 2011 15:06

μου βγάζει

Κώδικας: Επιλογή όλων

Error&#58; missing &#125; after property list
Source File&#58; http&#58;//localhost/civitec/index.php
Line&#58; 73, Column&#58; 4
Source Code&#58;
   &#125;&#41;.next&#40;&#41;; 
Γραμμή 73:

Κώδικας: Επιλογή όλων

 &#125;&#41;.next&#40;&#41;;
και το κλασσικό:

Κώδικας: Επιλογή όλων

Error&#58; uncaught exception&#58; &#91;Exception... "Component returned failure code&#58; 0x80004005 &#40;NS_ERROR_FAILURE&#41;"  nsresult&#58; "0x80004005 &#40;NS_ERROR_FAILURE&#41;"  location&#58; "JS frame &#58;&#58; http&#58;//localhost/civitec/index.php &#58;&#58; do_search &#58;&#58; line 54"  data&#58; no&#93;

Άβαταρ μέλους
fafos
Script Master
Δημοσιεύσεις: 6235
Εγγραφή: 30 Νοέμ 2004 03:09

Εκτέλεση function μέσα στο JS Slider Script

Δημοσίευση από fafos » 28 Μάιος 2011 16:34

to Error: uncaught exception sto vgazei gia enan apo tous parakato logous:

1. to path pros to php arxeio den einai sosto

2. h jquery "sygkrouetai" me to pure ajax pou xrhsimopoieis parapano... efoson xrhsimopoieis jquery tha steileis kai ta stoixeia sto php arxeio sou me jquery... den xreiazetai pure ajax.. des sto jquery gia ajax load, get, post klp..
Οι πάνες και οι πολιτικοί πρέπει να αλλάζονται συχνά για τον ίδιο λόγο...

Άβαταρ μέλους
korgr
Honorary Member
Δημοσιεύσεις: 5067
Εγγραφή: 07 Οκτ 2008 18:30
Τοποθεσία: Corinth
Επικοινωνία:

Εκτέλεση function μέσα στο JS Slider Script

Δημοσίευση από korgr » 28 Μάιος 2011 17:36

Ναι sorry δικό μου λάθος.
Για δοκίμασε αυτό:

Κώδικας: Επιλογή όλων

<script type="text/javascript">
      $&#40;function&#40;&#41;&#123;
$&#40;'select#isxis'&#41;.selectToUISlider&#40;&#123;
   sliderOptions&#58; &#123;
      slide&#58; do_search&#40;&#41;
   &#125;
&#125;&#41;.next&#40;&#41;;
$&#40;'select#mege8os'&#41;.selectToUISlider&#40;&#123;
   sliderOptions&#58; &#123;
      slide&#58; do_search&#40;&#41;
   &#125;
&#125;&#41;.next&#40;&#41;;
         //fix color
         fixToolTipColor&#40;&#41;;
      &#125;&#41;;
// ypoloipos kodikas 

kapoios001
Δημοσιεύσεις: 403
Εγγραφή: 17 Φεβ 2011 12:26

Εκτέλεση function μέσα στο JS Slider Script

Δημοσίευση από kapoios001 » 28 Μάιος 2011 18:03

Δοκίμασα να το κάνω με jquery με το load() αλλά δεν δουλεύει:

Κώδικας: Επιλογή όλων

function do_search&#40;&#41; &#123;
	var tipos = document.getElementById&#40;"tipos"&#41;.value;
	var edrasi = document.getElementById&#40;"edrasi"&#41;.value;
	var strofes = document.getElementById&#40;"strofes"&#41;.value;
	var isxis = document.getElementById&#40;"isxis"&#41;.value;
	var mege8os = document.getElementById&#40;"mege8os"&#41;.value;
	var axonas = document.getElementById&#40;"axonas"&#41;.value;
	var idio_podi = document.getElementById&#40;"idio_podi"&#41;.value;
	var apenanti_podi = document.getElementById&#40;"apenanti_podi"&#41;.value;
	var flantza_exo_exo = document.getElementById&#40;"flantza_exo_exo"&#41;.value;
	var flantza_patoura = document.getElementById&#40;"flantza_patoura"&#41;.value;
	var tasi = document.getElementById&#40;"tasi"&#41;.value;
	var tipos_kataskeuis = document.getElementById&#40;"tipos_kataskeuis"&#41;.value;

	var url="ajax_search.php";
	url=url+"?tipos="+tipos+"&edrasi="+edrasi+"&strofes="+strofes+"&isxis="+isxis+"&mege8os="+mege8os+"&axonas="+axonas+"&idio_podi="+idio_podi+"&apenanti_podi="+apenanti_podi+"&flantza_exo_exo="+flantza_exo_exo+"&flantza_patoura="+flantza_patoura+"&tasi="+tasi+"&tipos_kataskeuis="+tipos_kataskeuis;

	$&#40;'#AjaxResults'&#41;.load&#40;url&#41;;
&#125; // end do_search&#40;&#41;

$&#40;function&#40;&#41;&#123;
$&#40;'select#isxis'&#41;.selectToUISlider&#40;&#123;
   sliderOptions&#58; &#123;
      slide&#58; do_search&#40;&#41;
   &#125;
&#125;&#41;.next&#40;&#41;;
$&#40;'select#mege8os'&#41;.selectToUISlider&#40;&#123;
   sliderOptions&#58; &#123;
      slide&#58; do_search&#40;&#41;
   &#125;
&#125;&#41;.next&#40;&#41;;

kapoios001
Δημοσιεύσεις: 403
Εγγραφή: 17 Φεβ 2011 12:26

Εκτέλεση function μέσα στο JS Slider Script

Δημοσίευση από kapoios001 » 29 Μάιος 2011 17:47

korgr έγραψε:Ναι sorry δικό μου λάθος.
Για δοκίμασε αυτό:

Κώδικας: Επιλογή όλων

<script type="text/javascript">
      $&#40;function&#40;&#41;&#123;
$&#40;'select#isxis'&#41;.selectToUISlider&#40;&#123;
   sliderOptions&#58; &#123;
      slide&#58; do_search&#40;&#41;
   &#125;
&#125;&#41;.next&#40;&#41;;
$&#40;'select#mege8os'&#41;.selectToUISlider&#40;&#123;
   sliderOptions&#58; &#123;
      slide&#58; do_search&#40;&#41;
   &#125;
&#125;&#41;.next&#40;&#41;;
         //fix color
         fixToolTipColor&#40;&#41;;
      &#125;&#41;;
// ypoloipos kodikas 
ούτε αυτό μου δουλεύει

Άβαταρ μέλους
korgr
Honorary Member
Δημοσιεύσεις: 5067
Εγγραφή: 07 Οκτ 2008 18:30
Τοποθεσία: Corinth
Επικοινωνία:

Εκτέλεση function μέσα στο JS Slider Script

Δημοσίευση από korgr » 29 Μάιος 2011 19:22

Το μόνο που μπορώ να σου πω για να σε βοηθήσει, είναι πως κατέβασα το συγκεκριμένο script, τροποποίησα ένα demo του και η μέθοδος που σου έδειξα δούλεψε μια χαρά!

Κάτι άλλο δεν κάνεις σωστά στη σελίδα σου και έχεις conflict...

Άβαταρ μέλους
fafos
Script Master
Δημοσιεύσεις: 6235
Εγγραφή: 30 Νοέμ 2004 03:09

Εκτέλεση function μέσα στο JS Slider Script

Δημοσίευση από fafos » 29 Μάιος 2011 20:01

kati aplo gia na stelneis thn timh tou slider sto php arxeio:

Κώδικας: Επιλογή όλων

<!DOCTYPE html>
<html>
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
		<title>jQuery UI Example Page</title>
		<link type="text/css" href="css/ui-lightness/jquery-ui-1.8.13.custom.css" rel="stylesheet" />	
		<script type="text/javascript" src="js/jquery-1.5.1.min.js"></script>
		<script type="text/javascript" src="js/jquery-ui-1.8.13.custom.min.js"></script>
	

	<script>
$&#40;document&#41;.ready&#40;function&#40;&#41; &#123;
    $&#40;'#isxis'&#41;.slider&#40;&#123;
			min&#58; 0,
			max&#58; 500,
			step&#58; 50,		
        slide&#58; function&#40;event, ui&#41; &#123;
           $&#40; "#amount" &#41;.val&#40; "$" + ui.value &#41;;
		&#125;,
                 change&#58; function &#40;event, ui&#41; &#123; // otan allazo thn timh ston slider
	 
		$.ajax&#40;&#123;
			type&#58; 'POST',
			url&#58; 'ajax_search.php',
			data&#58; &#123; isxys&#58; ui.value&#125; ,// stelno sto php thn timh "isxys= value tou slider" &#40;$_POST&#91;isxys&#93;&#41;
			success&#58; function&#40;data&#41; &#123;
				alert&#40;data&#41;;//dokimh apotelesmatos apo php arxeio
			&#125;
		&#125;&#41;
		return false;		
                 &#125; 		
		
    &#125;&#41;;
$&#40; "#amount" &#41;.val&#40; "$" + $&#40; "#isxis" &#41;.slider&#40; "value" &#41; &#41;;	


&#125;&#41;;
	
	
	</script>



	
	</head>
	<body>
<div id="isxis"></div>
<input type="text" id="amount" style="border&#58;0; color&#58;#f6931f; font-weight&#58;bold;" />

	</body>
</html>


to parakato to exo gia na deis ti dinei sthn php.. mporeis na to svhseis:

Κώδικας: Επιλογή όλων

			success&#58; function&#40;data&#41; &#123;
				alert&#40;data&#41;;//dokimh apotelesmatos apo php arxeio
			&#125;
Οι πάνες και οι πολιτικοί πρέπει να αλλάζονται συχνά για τον ίδιο λόγο...

kapoios001
Δημοσιεύσεις: 403
Εγγραφή: 17 Φεβ 2011 12:26

Εκτέλεση function μέσα στο JS Slider Script

Δημοσίευση από kapoios001 » 30 Μάιος 2011 00:58

Πρώτα απ' όλα να σας ευχαριστήσω για τις απαντήσεις σας.

Αυτό που προσπαθώ να κάνω είναι να στέλνω στο PHP script όλα τα values με GET μέθοδο (όπως κάνω στο do_search()).

fafos το script που έγραψες εκτελείται μόνο όταν κάνω κλικ πάνω στο dropdown list και όχι όταν μετακινώ το slider δεξιά-αριστερά.

Αυτό που θέλω να κάνω είναι να παίρνει την τιμή που πάει στο dropdown εκείνη τη στιγμή και όχι όταν κάνω κλικ πάνω στην λίστα.

Έκανα διάφορες δοκιμές / πειράματα αλλά ακόμα δεν έχω κάποιο αποτέλεσμα που να δουλεύει με αυτό τον τρόπο.

Ευχαριστώ πολύ

kapoios001
Δημοσιεύσεις: 403
Εγγραφή: 17 Φεβ 2011 12:26

Εκτέλεση function μέσα στο JS Slider Script

Δημοσίευση από kapoios001 » 30 Μάιος 2011 01:09

Δεν ξέρω πώς έγινε και το κατάφερα, αλλά τελείως τυχαία το έκανα και δουλεύει.

Τροποποίησα το selectToUISlider.jQuery.js και το έκανα έτσι:

Κώδικας: Επιλογή όλων

	//plugin-generated slider options &#40;can be overridden&#41;
	var sliderOptions = &#123;
		step&#58; 1,
		min&#58; 0,
		orientation&#58; 'horizontal',
		max&#58; selectOptions.length-1,
		range&#58; selects.length > 1,//multiple select elements = true
		slide&#58; function&#40;e, ui&#41; &#123;//slide function
				var thisHandle = jQuery&#40;ui.handle&#41;;
				//handle feedback 
				var textval = ttText&#40;ui.value&#41;;

                              // start allages
				if &#40;thisHandle.attr&#40;'id'&#41; == 'handle_isxis'&#41; &#123;
					document.getElementById&#40;"isxis"&#41;.value = textval;
				&#125;
				else &#123;
					document.getElementById&#40;"mege8os"&#41;.value = textval;
				&#125;

				do_search&#40;&#41;;
                               // end allages
				thisHandle
					.attr&#40;'aria-valuetext', textval&#41;
					.attr&#40;'aria-valuenow', ui.value&#41;
					.find&#40;'.ui-slider-tooltip .ttContent'&#41;
						.text&#40; textval &#41;;

				//control original select menu
				var currSelect = jQuery&#40;'#' + thisHandle.attr&#40;'id'&#41;.split&#40;'handle_'&#41;&#91;1&#93;&#41;;
				currSelect.find&#40;'option'&#41;.eq&#40;ui.value&#41;.attr&#40;'selected', 'selected'&#41;;
		&#125;,
		values&#58; &#40;function&#40;&#41;&#123;
			var values = &#91;&#93;;
			selects.each&#40;function&#40;&#41;&#123;
				values.push&#40; jQuery&#40;this&#41;.get&#40;0&#41;.selectedIndex &#41;;
			&#125;&#41;;
			return values;
		&#125;&#41;&#40;&#41;
	&#125;;

Άβαταρ μέλους
fafos
Script Master
Δημοσιεύσεις: 6235
Εγγραφή: 30 Νοέμ 2004 03:09

Εκτέλεση function μέσα στο JS Slider Script

Δημοσίευση από fafos » 30 Μάιος 2011 02:59

den douleuei sosta.. to script pou sou edosa einai gia slider.. tora giati emfanizeis kai sliders kai drop downs... agnostai ai voulai tou kyriou..
Οι πάνες και οι πολιτικοί πρέπει να αλλάζονται συχνά για τον ίδιο λόγο...

kapoios001
Δημοσιεύσεις: 403
Εγγραφή: 17 Φεβ 2011 12:26

Εκτέλεση function μέσα στο JS Slider Script

Δημοσίευση από kapoios001 » 30 Μάιος 2011 11:43

Αν πω να εμφανίσω μόνο τα sliders και όχι τα drop-down lists πώς μπορώ να το κάνω; Δηλαδή που θα διαβάζει τα options το slider script;

Απάντηση

Επιστροφή στο “JavaScript και Frameworks”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 0 επισκέπτες