PDA

View Full Version : مشکل این کد چیه ؟



malihehshajari
چهارشنبه 14 اسفند 1392, 17:22 عصر
سلام

من کد زیر رو نوشتم




function sample_frm_f(e)
{
$('#sample_frm').attr('action','/search_sample/');

}


و توی تکست باکسم این تابع رو با



onblur = "sample_frm_f(event)"



صدا میزنم ولی اجرا نمیشه چرا ؟

***BiDaK***
چهارشنبه 14 اسفند 1392, 17:49 عصر
درسته.
اینجارو (http://jsfiddle.net/cXuX3/1/)ببین.

malihehshajari
چهارشنبه 14 اسفند 1392, 19:17 عصر
درسته.
اینجارو (http://jsfiddle.net/cXuX3/1/)ببین.

ممنون
خب منم همینو نوشتم ولی اجرا نمیشه تنها تفاوتش اینه که من زبان برنامم جنگو هست نه php
با زدن اینتر کار میکنه ولی با onblur کار نمیکنه :ناراحت:

***BiDaK***
چهارشنبه 14 اسفند 1392, 19:46 عصر
:لبخند:
کلشو با جی کوئری بنویس.

$(document).ready(function() {
$('#fname').blur(function () {
$('#sample_frm').attr('action','/search_sample/');
});
});


دمو (http://jsfiddle.net/cXuX3/2/)

malihehshajari
چهارشنبه 14 اسفند 1392, 20:13 عصر
:لبخند:
کلشو با جی کوئری بنویس.

$(document).ready(function() {
$('#fname').blur(function () {
$('#sample_frm').attr('action','/search_sample/');
});
});


دمو (http://jsfiddle.net/cXuX3/2/)

خب اگه بخوام یک آی دی به تابع بفرستم چطوری باید بنویسمش ؟

***BiDaK***
چهارشنبه 14 اسفند 1392, 20:31 عصر
منظورتونو متوجه نشدم.
اما اگر مقدار میخواید , میتونید آیدی رو بگیرید و .val() بذارید.اگر نیازه میتونید attribute های بیشتری به تگ بدید با هر نامی و با attr مقادیرو بگیرید.برای تست alert بگیرید.

$(document).ready(function() {
$('#fname').blur(function () {
$('#sample_frm').attr('action','/search_sample/');
alert($(this).attr('s'));
});
});

malihehshajari
چهارشنبه 14 اسفند 1392, 20:40 عصر
منظورتونو متوجه نشدم.
اما اگر مقدار میخواید , میتونید آیدی رو بگیرید و .val() بذارید.اگر نیازه میتونید attribute های بیشتری به تگ بدید با هر نامی و با attr مقادیرو بگیرید.برای تست alert بگیرید.

$(document).ready(function() {
$('#fname').blur(function () {
$('#sample_frm').attr('action','/search_sample/');
alert($(this).attr('s'));
});
});



من یسری آی دی داینامیک دارم توی صفحه که باید بسته به نیاز یکی رو صدا بزنم و نمیدونم کدوم صدا زده شده با جاوا اسکریپت مینویسم
function sample_frm_f(e, id) بعد این تابع رو صدا میزنم و آیدیم مشخص میشه
ولی اینجا نمیدونم چطور باید انجام بدم این کار رو

***BiDaK***
چهارشنبه 14 اسفند 1392, 20:53 عصر
آیدی رو در تگ چاپ میکنید؟؟
اگر در تگ چاپ میکنید آیدی رو دز یک صفت چاپ کنید و مثل کد بالا عمل کنید.
اینجارو (http://jsfiddle.net/cXuX3/3/)ببینید.
بازم نمیدونم درست متوجه شدم یا نه.

malihehshajari
چهارشنبه 14 اسفند 1392, 20:57 عصر
نه من میخوام با اون آی دی تو دیتابیسم جستجو انجام بدم

مرسی از اینکه وقت گذاشتید

***BiDaK***
چهارشنبه 14 اسفند 1392, 21:07 عصر
بازم متوجه نشدم:قهقهه:
اون 2 که نوشتم مثال بود و قسمت rec_id از دیتابیس پر میشد.
بیشتر توضیح بدید و اینکه اون آیدی که تو function با جاوا اسکریپت فراخوانی کرده بودید از کجا داره مقدار میگیره.بلاخره تو اون فانکشن از یک جا آیدیش مقدار میگیره.همون مقدارو من گفتم بریز داخل یک صفت.
چون این تفاوتی با اون فانکشن نداره.فرمش فرق میکنه.

malihehshajari
چهارشنبه 14 اسفند 1392, 21:54 عصر
بازم متوجه نشدم:قهقهه:
اون 2 که نوشتم مثال بود و قسمت rec_id از دیتابیس پر میشد.
بیشتر توضیح بدید و اینکه اون آیدی که تو function با جاوا اسکریپت فراخوانی کرده بودید از کجا داره مقدار میگیره.بلاخره تو اون فانکشن از یک جا آیدیش مقدار میگیره.همون مقدارو من گفتم بریز داخل یک صفت.
چون این تفاوتی با اون فانکشن نداره.فرمش فرق میکنه.

مثلا دارم با یک حلقه 10 تا تکست باکس با آی دی متفاوت روی صفحه قرار میدم
بعد در زمان تولید این تکست باکسها تو ی خاصیت onblur تابع رو فراخوانی میکنم با همون آی دی که دارم تولید میکنم بعد آی دی با فراخوانی تابع میره به تابع دیگه :اشتباه:

***BiDaK***
چهارشنبه 14 اسفند 1392, 22:14 عصر
خوب زمانی که داری با حلقه تکست باکس تولید میکنی بهشون یک کلاس همنام بده.مثلا همه ی تکستباکسای تولید شده کلاسشون inp هست.:متفکر:
بعد آیدی رو هر صفتی که دوست داشتی بریز.حتی توی id.:متفکر:
بعد اینجوری مینویسی:متفکر:



<input type="text" class="inp" id="2" />
<input type="text" class="inp" id="3" />
<input type="text" class="inp" id="4" />
<input type="text" class="inp" id="5" />
******************************
$(document).ready(function() {
$('.inp').blur(function () {
var id = $(this).attr('id');
alert(id);
});
});

malihehshajari
چهارشنبه 14 اسفند 1392, 22:18 عصر
مرسی از لطفتون

ایشالا شنبه تست میکنم ببینم چی میشه الان برنامم اینجا نیست

بازم ممنون از اینکه وقت گذاشتید