Solved

Spry AutoSuggestion With Ajax

Posted on 2008-06-12
1
936 Views
Last Modified: 2012-08-13
Hi,
I try to use Spry.AutoSuggest widget in my project with ajax. But it doesn't work with ajax. In normally there is no problem.
I've attach code.
Spry link : http://labs.adobe.com/technologies/spry/

<?php

if (isset($_GET["progress"])){

	?>

	<div id="spryautosuggest1">

	  <input type="text" name="text1" id="text1" />

			<div id="productMenu" spry:region="dsProducts1">

				<div spry:repeat="dsProducts1" spry:suggest="{DISPLAY_TEXT}">

					<div>{DISPLAY_TEXT}</div>

				</div>

			</div>

	</div>	

	<?php

	exit();

}

?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" xmlns:spry="http://ns.adobe.com/spry">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-9" />

<title>CRM</title>

<script src="/js/Spry_1_6_1_022408/widgets/autosuggest/SpryAutoSuggest.js" type="text/javascript"></script>

<script src="/js/Spry_1_6_1_022408/includes/xpath.js" type="text/javascript"></script>

<script src="/js/Spry_1_6_1_022408/includes/SpryData.js" type="text/javascript"></script>

<link href="/js/Spry_1_6_1_022408/widgets/autosuggest/SpryAutoSuggest.css" rel="stylesheet" type="text/css" />

<script type="text/javascript" src="/js/prototype.js"></script>

 

<script language="javascript">

var sprysuggest1;

var dsProducts1;

 

function getSuggestionDiv(){

	new Ajax.Request("a.php?progress=yes",{onComplete:getSuggestionDivComplete});

}

 

function getSuggestionDivComplete(request){

	dsProducts1 = new Spry.Data.XMLDataSet("adobe_products-xml.txt", "/FIELDS/FIELD", { sortOnLoad: "DISPLAY_TEXT" });

	$("myDiv").innerHTML=request.responseText;

	sprysuggest1 = new Spry.Widget.AutoSuggest("spryautosuggest1", "productMenu", "dsProducts1", "DISPLAY_TEXT");

        //it should be work after here. but doesn't work.

	

}

 

</script>

 

<script type="text/javascript">

	

</script>

</head>

<body>

<div id="myDiv">

</div>

<button onclick="getSuggestionDiv();">Get div for auto suggestion</button>

 

</body>

</html>

Open in new window

adobe-products-xml.txt
0
Comment
Question by:erenpasa
1 Comment
 

Accepted Solution

by:
erenpasa earned 0 total points
ID: 21778677
I've find my solution my own.
<?php

if (isset($_GET["progress"])){

        ?>

        <div id="spryautosuggest1">

          <input type="text" name="text1" id="text1" />

                        <div id="productMenu" spry:region="dsProducts1">

                                <div spry:repeat="dsProducts1" spry:suggest="{DISPLAY_TEXT}">

                                        <div>{DISPLAY_TEXT}</div>

                                </div>

                        </div>

        </div>  

        <?php

        exit();

}

?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" xmlns:spry="http://ns.adobe.com/spry">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-9" />

<title>CRM</title>

<script src="/js/Spry_1_6_1_022408/widgets/autosuggest/SpryAutoSuggest.js" type="text/javascript"></script>

<script src="/js/Spry_1_6_1_022408/includes/xpath.js" type="text/javascript"></script>

<script src="/js/Spry_1_6_1_022408/includes/SpryData.js" type="text/javascript"></script>

<link href="/js/Spry_1_6_1_022408/widgets/autosuggest/SpryAutoSuggest.css" rel="stylesheet" type="text/css" />

<script type="text/javascript" src="/js/prototype.js"></script>

 

<script language="javascript">

var sprysuggest1;

var dsProducts1;

 

function getSuggestionDiv(){

        new Ajax.Request("a.php?progress=yes",{onComplete:getSuggestionDivComplete});

}

 

function getSuggestionDivComplete(request){

        dsProducts1 = new Spry.Data.XMLDataSet("adobe_products-xml.txt", "/FIELDS/FIELD", { sortOnLoad: "DISPLAY_TEXT" });

        $("myDiv").innerHTML=request.responseText;

        sprysuggest1 = new Spry.Widget.AutoSuggest("spryautosuggest1", "productMenu", "dsProducts1", "DISPLAY_TEXT");

        //it should be work after here. but doesn't work.
 

        Spry.Data.initRegions();//I've added this line for init html again.It works now.

}

 

</script>

 

<script type="text/javascript">

        

</script>

</head>

<body>

<div id="myDiv">

</div>

<button onclick="getSuggestionDiv();">Get div for auto suggestion</button>

 

</body>

</html>

Open in new window

0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article describes how to create custom column layout styles for Bootstrap. The article uses 5 columns to illustrate the concept, but the principle can be extended to any number of columns.
Introduction This article is intended for those who are new to PHP error handling (https://www.experts-exchange.com/articles/11769/And-by-the-way-I-am-New-to-PHP.html).  It addresses one of the most common problems that plague beginning PHP develop…
This tutorial will teach you the core code needed to finalize the addition of a watermark to your image. The viewer will use a small PHP class to learn and create a watermark.
The viewer will learn how to create a basic form using some HTML5 and PHP for later processing. Set up your basic HTML file. Open your form tag and set the method and action attributes.: (CODE) Set up your first few inputs one for the name and …

896 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

17 Experts available now in Live!

Get 1:1 Help Now