کمک برای اینتر کردن یک متن در سیستم سرچ فلش/خیلی خیلی فوری

وضعیت
موضوع بسته شده است.

baharaneh

Member
سلام فایل زیر حاوی یک فایل fla و xml سرچ می باشد ، دو کلمه رضا و فامیل جهت جستجو در xml قرار گرفته ، زمانی که در فلش سرچ می کنیم هر دو رو پست سرهم نشون میده ، چیکار کنم که به این شکل نشون بده :
عنوان : رضا
نویسنده : فامیل

ممنون میشم کمک کنید
خیلی خیلی فوری
 

پیوست ها

  • 01.zip
    14.7 کیلوبایت · بازدیدها: 16

baharaneh

Member
چه فرقی داره ؟
کد:
String.prototype.contains = function(searchString) {
	return (this.indexOf(searchString) != -1);
};
Array.prototype.contains = function(searchValue) {
	var i = this.length;
	while (i--) {
		if (this[i] == searchValue) {
			return true;
		}
	}
	return false;
};
SearchXML = function (nodes, query, useChildElements) {
	var results = [];
	for (var i = 0; i<nodes.length; i++) {
		for (var j = 0; j<nodes[i].childNodes.length; j++) {
			currNode = nodes[i].childNodes[j];
			if (useChildElements.contains(currNode.nodeName)) {
				if (currNode.firstChild.nodeValue.contains(query)) {
					results.push(nodes[i]);
					break;
				}
			}
		}
	}
	return results;
};
ElementsToSearch = function () {
	var childElementsToSearch = [];
	if (search_fields.title_check.checked) {
		childElementsToSearch.push("title");
	}
	if (search_fields.author_check.checked) {
		childElementsToSearch.push("author");
	}
	if (search_fields.message_check.checked) {
		childElementsToSearch.push("message");
	}
	return childElementsToSearch;
};
DisplayNodes = function (nodes, field_txt) {
	field_txt.htmlText = "";
	var entry;
	var separator = "<br>_______________________<br><br>";
	for (var i = 0; i<nodes.length; i++) {
		entry = "";
		entry += "<b>"+nodes[i].childNodes[0].firstChild.nodeValue+"</b>";
		entry += " نويسنده : "+nodes[i].childNodes[1].firstChild.nodeValue;
		entry += "<br>"+nodes[i].childNodes[2].firstChild.nodeValue;
		if (nodes[i].attributes.url.length) {
			entry += "<br><a href='"+nodes[i].attributes.url;
			entry += "'><font color='#FF0000'>مطالعه کامل مقاله ...</font></a>";
		}
		field_txt.htmlText += entry+separator;
	}
};
search_highlight = new TextFormat();
search_highlight.color = 0xFF0000;
search_highlight.italic = true;
HighlightOccurences = function (str, field_txt, format) {
	if (!str.length) {
		return (0);
	}
	var start = field_txt.text.indexOf(str);
	var end = start+str.length;
	while (start != -1) {
		field_txt.setTextFormat(start, end, search_highlight);
		start = field_txt.text.indexOf(str, end);
		end = start+str.length;
	}
};
var posts_xml = new XML();
posts_xml.ignoreWhite = true;
posts_xml.onLoad = function(success) {
	if (success) {
		search_fields._visible = true;
	} else {
		results_txt.text = "Error loading XML";
	}
};
search_fields._visible = false;
posts_xml.load("sokhanrani.xml");
search_fields.title_check.title_txt.text = "عنوان مقاله";
search_fields.author_check.title_txt.text = "نويسنده مقاله";
search_fields.message_check.title_txt.text = "بخشي از مقاله";
search_fields.search_btn.onRelease = function() {
	if (search_fields.query_txt.text.length<3) {
		results_txt.text = "جهت جستجو لطفا یک مورد را انتخاب و کلمه مورد نظر را وارد نمائید";
		return (0);
	}
	var searchElements = ElementsToSearch();
	var nodesWithQuery = SearchXML(posts_xml.firstChild.childNodes, search_fields.query_txt.text, searchElements);
	if (nodesWithQuery.length) {
		DisplayNodes(nodesWithQuery, results_txt);
	} else {
		results_txt.text = " ... هيچ نتيجه ای نداشت "+search_fields.query_txt.text+".";
		return (0);
	}
	HighlightOccurences(search_fields.query_txt.text, results_txt, search_highlight);
	scrollbar.setScroll(0);
};
scrollbar.setTarget(results_txt);
 

BehrouzPc

پــــادشــاه فــلــــش
سلام

این بخش را طبق نیاز خود ویرایش کنید

[PHPS]entry = "";
entry += "<b>"+nodes.childNodes[0].firstChild.nodeValue+"</b>";
entry += " نويسنده : "+nodes.childNodes[1].firstChild.nodeValue;
entry += "<br>"+nodes.childNodes[2].firstChild.nodeValue;[/PHPS]

این بخش به صورت خطی مقدار متغیر entry را افزایش می دهد می توانید با قالب و نوعی که می خواهید ویرایش کنید
 

baharaneh

Member
ممنون از پاسخ

یه بزرگواری کنید اون فایل zip و اگه میتونید ویرایش کتید ، چون من نمیتونم این و ادیت کنم
 
وضعیت
موضوع بسته شده است.

جدیدترین ارسال ها

بالا