terrorhell
Member
خوب جناب shahkey ممنون میشم راهنمایی کنید :-؟
ببینید دوست عزیز، ارسال پارامتر در متد get بصورت درونی توی اینکلاس گذاشته نشده و اینکار واگذار شده به متد post که هرچی نیاز داشتید رو با متد postبفرستید.دوست من منظورم اینه که مثلاً تو Section A دو تا متغیر GET رو چاپ کنم
مثلاً من تو index.php دو تا input text گذاشتم و به هرکدوم یک ID دادم
ولی واسه این تگ button نمیدونم چه کار کنم که مقدار val2 هم بفرسته به test.phpکد:<input type="text" name="a" size="4" id="val1"> <input type="text" name="b" size="4" id="val2"> <button onClick="send_get('secA','secA','<img src=\'a-loading.gif\'>','test.php','val1');" style="width: 104">
وقتی به همین صورت چیزی داخل input ها مینویسم فقط مقدار input اول رو میگیره و 2 بار نمایش میده
من میخوام هر چندتا input که خواستم بفرستم و تو section A نمایش بدم
کد:function send_get(a,b,c,d,e){ ajax = new Ajax; d=d+'?val1='+ajax.getElement(e).value + '&val2='+ajax.getElement(e).value; ajax.setvals(a,b,c,d,e,null); ajax.get(); }
ممنون میشم راهنمایی کنی ، تو مثال هایی که گذاشتی همچین چیزی که من میخوام نداره
this.get = function(){
if(this.x()){
this.xmlObject.onreadystatechange=this.changestate;
this.xmlObject.open("GET",this.url+'?noCache='+ (+new Date) + '&' + this.parameters);
this.xmlObject.send(null);
}
}
<input type="text" name="a" size="4" id="val1">
<input type="text" name="b" size="4" id="val2">
<button onClick="send_get('secA','secA','<img src=\'a-loading.gif\'>','test.php','val1');" style="width: 104">
send_get('secA','secA','<img src=\'a-loading.gif\'>','test.php', 'val1', 'val2');
function send_get(a,b,c,d,val1,val2){
ajax = new Ajax();
ajax.setvals(a,b,c,d,null,'val1='+ajax.getElement(val1).value + '&val2='+ajax.getElement(val2).value);
ajax.get();
}
this.get = function(){
if(this.x()){
this.xmlObject.onreadystatechange=this.changestate;
this.xmlObject.open("GET",this.url+'?noCache='+ (+new Date) + '&' + this.parameters);
this.xmlObject.send(null);
}
}
فکر می کنم اسمش گوبای همه چیز باشه!ممنون دوست عزیز ، اما میشه بگین اون متغیر noCache چی هست که تو متد get قرار دادید ؟
چون من هر چیزیو که میخوام چاپ کنم این متغیر noCache هم خودش یک مقداری میگیره و چاچ میکنه خودشو و مجبور شدم از متد get بردارمش
حالا ممنون میشم توضیحی راجبش بدین و اینکه چرا چاپ میشه !؟
کد:this.get = function(){ if(this.x()){ this.xmlObject.onreadystatechange=this.changestate; this.xmlObject.open("GET",this.url+'?noCache='+ (+new Date) + '&' + this.parameters); this.xmlObject.send(null); } }
<input type="text" name="name" size="4" id="name" >
<input type="text" name="name" size="4" class="name" >
سوالتون ربطی به محتوای تاپیک نداره، و اصلا ربطی به Ajax نداره. قرار نیست که از این کلاس برای شما یک فریمورک ایجاد کنیم.جناب یک سوال دیگه :
چجوری این کلاس را تغییر بدم که به جای ID اون شی Class بگیره
یعنی به جای ID
کد:<input type="text" name="name" size="4" id="name" >
Class رو بگیره :
کد:<input type="text" name="name" size="4" class="name" >
خیلی ممنون امین جان که به سوالات پاسخ دادی! راستش من اصلا این تاپیک رو فراموش کرده بودم!!سلام.
ببینید همونطور که از اسم این تاپیک و یا همین تالار معلوم هست، اینجا صرفا مختص ajax هست، و نه چیز دیگه ای. حالا شما فکر می کنید برای اینکه یک المنت رو از طریق class اون دیافت کنید، باید بیاید در همین تاپیک سوالتون رو بپرسید؟
در پست قبلی هم بهش اشاره کردم، این چیزی که شما می خواید هیچ ربطی به اینجا نداره، از همون اول این کلاس برای استفاده از ajax معرفی و ایجاد شده نه اینکه قابلیتهای اضافه ای که مربوط به برنامه نویسی javascript هست رو اینجا مطرح کنید.
در هرصورت برای آخرین بار این خواسته ی شما رو انجام می دم. ( فقط یادتون باشه درخواست کد در فروم خلاف قوانین هست و بار دومی وجود نداره. )
فایل ضمیمه رو دانلود کنید.
خیلی ممنون امین جان که به سوالات پاسخ دادی! راستش من اصلا این تاپیک رو فراموش کرده بودم!!
دوستان این کلاس در حال ارتقا و بهینه سازی هست لطفا چند روز صبر کنید تا نسخه جدید رو جایگزین کنم
موفق باشید
سلام!سلام ، shahkey جان آماده نشد !؟ چند روز شد چند سال
حداقل بیا یک توضیحی بده که چی کارا کردیش و اینکه کی پابلیک میشه
منتظریم
سلام مجددسلام
راستش این کلاس رو وقتی رو یک تگ اجرا میکنم
مثالاً 3 تا پست دارم صفحه که فقط عنوان اونارو نمایش میدم ، و وقتی رو این عنوان های کلیک میکنم هر کردم با توجه به مقداری که تو value دارن یک توضحاتی رو که مخصوص به همون id هست نمایش میدن ( مثل ادامه متن ... )
اما این کلاس رو ID شی تنظیم میشه و id فقط میتونه واسه یک شی تعریف بشه واسه همین من رو هرکدوم از عنوان های کلیک میکنم باعث میشه فقط ادامه متن عنوان اول نمایش داده بشه
واسه همین یکم جستجو کردم و به این قضیه رسیدم که باید این کلاس روی خاصیت class ست بشه به جای id
و جناب aminhelp جواب بنده رو دادن اما من متوجه کار ایشون نشدم و نتونستم از راهنمایی ایشون استفاده کنم
ممنون میشم شما راهنمایی کنید تو این زمینه
<h1>Title 1</h1><br/>
<a href="#" onclick="xcontinue(1)">Continue...</a>
<div id="continue_container_1"></div>
<h1>Title 2</h1><br/>
<a href="#" onclick="xcontinue(2)">Continue...</a>
<div id="continue_container_2"></div>
<h1>Title 3</h1><br/>
<a href="#" onclick="xcontinue(3)">Continue...</a>
<div id="continue_container_3"></div>
function xcontinue(id){
Var ajax = new Ajax;
ajax.setvals('continue_container_'+id, 'continue_container_'+id , 'Loading...', 'continue.php?id='+id, null);
ajax.post();
}