PDA

View Full Version : سوال: نمایش لیست اطلاعات XML در فایل HTML با JQuery



FirstLine
سه شنبه 23 اسفند 1390, 13:06 عصر
با سلام
یک فایل html ویک XML حاوی تعدادی خبر دارم.
فایل xml حاوی خبر با فیلدهای id , pid , title , date , text است
باید در یک صفحه HTM با استفاده از JQuery لیست اخبار موجود در فایل XML را بصورت یک لیست نمایش دهم و با کلیک بر روی عنوان هر خبر متن کامل خبر که در فیلد text است نمایش داده شود(مثلا یک پنجره باز شود و اطلاعات و جزئیات را نمایش دهد).
لطفا راهنمایی بفرمایید که چجوری اینکار را انجام دهم.
با تشکر

e107365
سه شنبه 23 اسفند 1390, 15:45 عصر
http://think2loud.com/224-reading-xml-with-jquery/
به نظر من xslt بهتر از جی کوئریه برای نمایش اطلاعات xml. ولی با آموزش سایت بالا می تونی این کار رو بکنی.

FirstLine
سه شنبه 23 اسفند 1390, 18:22 عصر
با سلام
از لطف و راهنمایی شما سپاسگزارم.
مثال را دانلوود کردم ولی وقتی اجراش میکنم اطلاعات فایل xml را نمایش نمیدهد.
آیا باید در کد زیر تغییراتی را انجام بدهم؟ یا تابع خاصی را صدا بزنم


<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<link rel="stylesheet" type="text/css" media="all" href="style.css" />
<script type="text/javascript" src="jquery.js"></script>
<title>Reading XML with jQuery</title>
<script>
$(document).ready(function(){
$.ajax({
type: "GET",
url: "sites.xml",
dataType: "xml",
success: function(xml) {
$(xml).find('site').each(function(){
var id = $(this).attr('id');
var title = $(this).find('title').text();
var url = $(this).find('url').text();
$('<div class="items" id="link_'+id+'"></div>').html('<a href="'+url+'">'+title+'</a>').appendTo('#page-wrap');
$(this).find('desc').each(function(){
var brief = $(this).find('brief').text();
var long = $(this).find('long').text();
$('<div class="brief"></div>').html(brief).appendTo('#link_'+id);
$('<div class="long"></div>').html(long).appendTo('#link_'+id);
});
});
}
});
});
</script>
</head>
<body>
<div id="page-wrap">
<h1>Reading XML with jQuery</h1>
</div>
</body>
</html>

با تشکر

e107365
چهارشنبه 24 اسفند 1390, 01:48 صبح
باید روی سرور اجرا بشه