PDA

View Full Version : سوال: نحوه بدست آوردن مقدار صفت یه تگ به وسیله ajax



se8820726
پنج شنبه 20 مهر 1391, 06:16 صبح
سلام به تمامی دوستان عزیز
آقا من میخوام به وسیله ajax برم تو یه صفحه دیگه و مثلا مقدار صفت href تگ a با id مثلا result رو بدست بیارم

میشه دوستان کمک کنند که چجوری باید یه همچین کاری کرد؟

Variable
پنج شنبه 20 مهر 1391, 10:27 صبح
میشه . باید وقتی ادرس صفحه رو میدی با یک علامت # ای دی عنصر مورد نظر رو میدی


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<script src="http://code.jquery.com/jquery-latest.js"></script>

<script>
$(document).ready(function(){
$("#links").load("/Main_Page #jq-p-Getting-Started li");
});
</script>
<style>body{ font-size: 11px; font-family: Arial; }</style>
</head>
<body>
<b>jQuery Links:</b>
<ul id="links"></ul>
</body>
</html>

se8820726
جمعه 21 مهر 1391, 10:21 صبح
سلام داداش
این چیزی که شما گفتین میاد کل چیزایی که تو اون Main_Page #jq-p-Getting-Started li هست رو تو تگ links# ما چاپ میکنه.
اما من فقط میخوام مقدار یه صفت خاص که تو اون تگ li هست رو بهم بده. مثلا اون مقدار رو بتونم با دستور ()alert نمایش بدم.
میشه راهنمایی کنید

plague
جمعه 21 مهر 1391, 11:56 صبح
اینو تست کن

$.get(url, data, function(html)
{
var href = $(html).filter('#result').attr('href');
});

se8820726
جمعه 21 مهر 1391, 18:09 عصر
آقا کار نکرد

اینم کدیه که من نوشتم:
index.html:


<!doctype html>
<html>
<head>
<script src="jquery-1.8.0.min.js"></script>
<script>
function a(){
$.get('c.html', data, function(html)
{
alert( $(html).filter('#result').attr('href'));
});
}
</script>
</head>
<body>
<button onclick="a()">click</button>
</body>
</html>


c.html:


<!doctype html>
<html>
<head>
</head>
<body>
<a id="result" href="http://google.com">google</a>
</body>
</html>


تو فایل index به جای data باید چیز دیگه بنویسم؟
لطفا راهنمایی کنید

Variable
جمعه 21 مهر 1391, 23:19 عصر
میخام بگم من زیاد جیکوئری بلد نیستم ولی تا جاییکه بلد باشم کمک میکنم
نگاه کنید . برای درخاستهای ایجکسی اول باید توجه داشته باشید که لوکال هاستتون فعال باشه و اینکه درخاستهای ایجکسیتون به صفحات درون یک هاست باید ارتباط داشته باشه . یعنی نمیتونی یه فایل خارجی تو یه سایت دیگر رو فراخونی کنی .
با این پیش فرضها این کد رو تست کنی تقریبا همون چیزی هست که میخای ولی گفتم که برایچی از الرت استفاده نمیشه . چون تو کار ایجکس مشکل ایجاد میکنه


<html>
<head>
<title></title>
<script type="text/javascript" src='jq.js'></script>
</head>
<body>
<p id="page">
</P>
<script type="text/javascript">
$(function(){
var e=document.createElement('p');
console.log(e);

$(e).load('margin.html #box',function(){
console.log($(e).find('#box ').attr('href'));
});
});
</script>
</body>
</html>


صفحه دوم


<html>
<head>
<title></title>
<style type="text/css">
body{
padding-top: 50px;
margin:0;

}
#box{

width:400px;
height: 200px;
margin:auto auto;
border:1px solid black;

}
</style>
</head>
<body id="main">
<div id="box" href="google.com">Hello</div>

</body>
</html>

plague
شنبه 22 مهر 1391, 11:13 صبح
آقا کار نکرد

اینم کدیه که من نوشتم:
index.html:


<!doctype html>
<html>
<head>
<script src="jquery-1.8.0.min.js"></script>
<script>
function a(){
$.get('c.html', data, function(html)
{
alert( $(html).filter('#result').attr('href'));
});
}
</script>
</head>
<body>
<button onclick="a()">click</button>
</body>
</html>
c.html:


<!doctype html>
<html>
<head>
</head>
<body>
<a id="result" href="http://google.com">google</a>
</body>
</html>
تو فایل index به جای data باید چیز دیگه بنویسم؟
لطفا راهنمایی کنید
شما data رو اصلا نباید بزارید
data ماله وقتیه که شما میخای با درخواست ایجکس یه سری داده ها رو بفرستی به اون صفحه مقصد اگه نداری همچین چیزی اصلا نزارش وگرنه ایجاد اررور میکنه
شما توی این کدت پارامتری برای ارسال به صفحه مقصد نداری پس نباید بزاریش

se8820726
شنبه 22 مهر 1391, 11:25 صبح
دم همه دوستان گرم
اما یه سوالی!
گفتین که: (( درخاستهای ایجکسیتون به صفحات درون یک هاست باید ارتباط داشته باشه ))
خوب من در اصل میخوام یه کدی بنویسم که بره از یه صفحه تو یه سایت دیگه مقدار صفت href تمام تگ های a رو برداره و تو یه دیتابیس ذخیره کنه
یعنی دیگه نمیشه یه همچین کاری کرد؟

plague
شنبه 22 مهر 1391, 18:30 عصر
من تا حالا پیش نیومده تست کنم ولی درخواست های ایجکس فکر میکنم که نمیتونید خارج از دومین خودتون ارسال کنید
با php ولی میشه
راهش اینه که درخواست ایجکس رو به یه فایل php بفرستید اون با file_get_contents بره اون صفحه رو بگیره و نتیجش رو پرینت کنه

se8820726
شنبه 22 مهر 1391, 19:33 عصر
داداش من دقیقا منظورتو نفهمیدم
میشه یه کد نمونه اینجا بنویسی که ببینم چه جوریه؟

plague
دوشنبه 24 مهر 1391, 12:44 عصر
درخواستت رو به همچین صفحه ای بفرست

<?php echo file_get_contents('www.abc.com'); ?>
بجای abc هم آدرس صفحت رو بنویس , اجرا کمی کند خواهد بود