PDA

View Full Version : لود آجاکس صفحه ای در صفحه دیگر در بخش یا کادر مشخص



ms11309
یک شنبه 25 اسفند 1392, 18:05 عصر
سلام
چطور میشه صفحه ای رو در صفحه دیگری با صورت آجاکس لود کرد که اکشن هم انجام بده؟

مثلا:

فرمی در صفحه 1 است که اکشن فرم به صفحه 2 انتقال میده و بعد از انجام عملیات پیغامب نمایش داده میشه...حالا این صفحه دوم فقط و فقط شامل همون متن پیغام باشه و استایلی هم نداشته باشه

حالا چطور میشه کاری کرد که در همون صفحه 1 با کلیک روی دکمه فرم اکشن به صفحه 2 منتقل بشه ولی پیغام در همون " صفحه 1 "‌ نمایش داده بشه؟
حالا بشه مکان نمایشش رو هم یه جوری تنظیم کرد که در اطراف همون فرم نمایش داده بشه و معلوم باشه مال اون قسمته!!

ممنون میشم دوستان گرامی راهنماییم کنن چون از جاوا اسکریپت و آجاکس چیز زیادی نمیدونم!!!!

با تشکر

beh3000
یک شنبه 25 اسفند 1392, 18:28 عصر
سلام
اینجا یه مثال ساده برات گذاشتم

http://parsonline.cloudsite.ir/test.rar

ms11309
یک شنبه 25 اسفند 1392, 18:46 عصر
سلام
اینجا یه مثال ساده برات گذاشتم

http://parsonline.cloudsite.ir/test.rar

آقا ممنون
تست میکنم مشکلی بود مزاحمتون میشم

ms11309
یک شنبه 25 اسفند 1392, 20:25 عصر
سلام
اینجا یه مثال ساده برات گذاشتم

http://parsonline.cloudsite.ir/test.rar

یعنی کارمو راه انداختیییییییییی خدددددددداااااااااا کارتو راه بندازه!!!

بخش فرم ها رو با موفقیت انجام دادم
فقط یه بخشی هست که با a :



<a href="/emtiaz/id/1"></a>


دستور میفرسته به صفحه دیگه
اینو چطور میتونم انجام بدم؟
همین کد رو میشه کاریش کرد؟

ms11309
یک شنبه 25 اسفند 1392, 20:56 عصر
یه مشکل دیگه هم هست
وقتی در یک صفحه چند باز از این کد استفاده میشه کار نمیکنه یا کلا فقط یکی کار میکنه
من حداقل نیاز دارم 5 6 باز این روش رو تکرار کنم

دایو ریزالت رو تغییر دادم اسمشو بازم نشد
لطفا راهنمایی کنید

beh3000
دوشنبه 26 اسفند 1392, 08:42 صبح
صبح بخیر

در مورد قسمت <a> : خب به جای a یه چیز دیگه بنویس مثل div


<div onclick="func();">text</div>


تابع جاوا اسکریپت رو هم به این شکل بنویس :

function func(){
$.ajax({
url:'/emtiaz/id/1',
success: function(data){
//chap natize
}});
}



اینکه میخوای چندبار اجرا کنی زیاد متوجه نشدم توی قسمت های مختلف میخوای از این تابع استفاده کنی و نتیجه همون جا نمایش داده بشه ( همون جایی که فراخوانی شده )؟ ؟ ؟؟
مثلا اگه بخوای همین تابع رو در قسمت های مختلف فراخوانی کنی یک ورودی برای func در نظر بگیر و در قسمتهای مختلف با ورودی های مختلف فراخوانی کن مثلا 1 . 2 . 3 و ... بعد توی قسمت success بگو اگه ورودی 1 بود توی div1 نتیجه رو چاپ کن اگه 2 بود ... الی آخر

ms11309
سه شنبه 27 اسفند 1392, 12:09 عصر
صبح بخیر

در مورد قسمت <a> : خب به جای a یه چیز دیگه بنویس مثل div


<div onclick="func();">text</div>


تابع جاوا اسکریپت رو هم به این شکل بنویس :

function func(){
$.ajax({
url:'/emtiaz/id/1',
success: function(data){
//chap natize
}});
}



اینکه میخوای چندبار اجرا کنی زیاد متوجه نشدم توی قسمت های مختلف میخوای از این تابع استفاده کنی و نتیجه همون جا نمایش داده بشه ( همون جایی که فراخوانی شده )؟ ؟ ؟؟
مثلا اگه بخوای همین تابع رو در قسمت های مختلف فراخوانی کنی یک ورودی برای func در نظر بگیر و در قسمتهای مختلف با ورودی های مختلف فراخوانی کن مثلا 1 . 2 . 3 و ... بعد توی قسمت success بگو اگه ورودی 1 بود توی div1 نتیجه رو چاپ کن اگه 2 بود ... الی آخر


واقعا ممنون
مشکلم حل شد
ممممممممممممممممممممممممم مممممنون

ms11309
سه شنبه 27 اسفند 1392, 14:18 عصر
یه مشکل دیگه دارم لطفا این رو هم راهنمایی کنید

میخواستم این تابع رو روی این کد اعما کنم:



<input type="radio" value="Add" checked name="Action" id="fpaddn">
<label for="fpaddn">اضافه</label>
<input type="radio" value="Remove" name="Action" id="fpremoven">
<label for="fpremoven">حذف</label>


و کد جاوا رو به این شکل تغییر دادم:



<script>
function Nter(){
$.ajax({
type:\"POST\",
url:'nter.php',
data:{Action: $(\"#fpremoven\").val(),Action:$(\"#fpaddn\").val(),Emailn:$(\"#Emailn\").val()} ,
success: function(data) { $(\"#resultn\").html(data);}
});
}
</script>


کار میکنه
ولی مشکل اینجاست که رادیو تاثیر نمیزاره و طبق چینش در جاوا اسکریپت عمل میکنه و فرقی نمیکنه رو حذف باشه یا اضافه

چطور باید تغییر داد که تشخیص بده؟

کد داخل فایل php هم:



if($Action=="Add"){
$check = mysql_query("SELECT * FROM nter WHERE email = '$Emailn'");
if(mysql_num_rows($check)>0)
{
echo'ایمیل قبلا ثبت شده است';
} else {

mysql_query("INSERT INTO nter (id,email)VALUES('$id','$Emailn')");
echo'ایمیل با موفقيت ثبت شد';
}
} else {
$check = mysql_query("SELECT * FROM nter WHERE email = '$Emailn'");
if(mysql_num_rows($check)==0)
{
echo'اين ایمیل ثبت نشده است';
} else {
$sql = "DELETE FROM nter WHERE email='$Emailn'";
$result = mysql_query($sql);
echo'ایمیل با موفقيت حذف شد';


لطفا باز هم کمکم کنید
ممنون

beh3000
سه شنبه 27 اسفند 1392, 19:40 عصر
سلام


function Nter(){
var act="Remove";
if($("#fpaddn").is(":checked"))
act="Add";
$.ajax({
type:"POST",
url:'nter.php',
data:{Action:act,Emailn:$("#Emailn").val()} ,
success: function(data) { $("#resultn").html(data);}
});
}