PDA

View Full Version : سوال: drag and drop ???



My_LoVe_IRAN
دوشنبه 28 بهمن 1392, 10:31 صبح
با سلام خدمت دوستان
من یه کد جی کوئری گرفتم و میخاستم یه تغییر کوچیک بدم توش اما نتونستم ،میخام تو کد زیر وقتی یه تگ a با عنوان تست میره رو تگ a دیگه با همین عنوان جاشون باهم عوض بشه نه اینکه drop نشه و disable بشه ، به عبارتی به جای این کد چی بنویسم که جابه جا بشن ،نه disable ?!

$('td').not('td:empty').droppable("disable");


کد کامل :
http://jsfiddle.net/359pK/

My_LoVe_IRAN
دوشنبه 28 بهمن 1392, 21:45 عصر
کسی از دوستان جوابی نداره ؟

My_LoVe_IRAN
دوشنبه 28 بهمن 1392, 22:30 عصر
اگر کسی از دوستان میتونه کمک کنه ،من چند بار خواستم همین سوال رو تو انجمن های خارجی بپرسم اما چون زبانم خوب نیست فقط نمره منفی بهم دادن به جای جواب !!!
من میخام تو لینک پایین وقتی تست1 رو میکشم روی تست2 جای این دو تا با هم عوض بشه ،در ضمن چطور میتونم داخل دیتابیس ذخیره کنم ؟ به طور مثال (تست 1 تو سطر 1 و ستون 2) رو میخام تو دیتا بیس ذخیره بشه !

http://jsfiddle.net/359pK/2/

geeking
دوشنبه 28 بهمن 1392, 22:33 عصر
سلام،
تغییرتون کوچیک نیست، و یک مقدار مشکل ، خودتون اگه با برنامه نویسی آشنایی دارید از بیس بنویسید بدون jquery ui .
توی این پلاگین فقط نمیدنم موقعت قبلی و جاری رو چطوری بدست بیارم تا بتونم تغییر بدم جاهاشون رو

geeking
دوشنبه 28 بهمن 1392, 23:17 عصر
یک نیمچه کد نوشتم الان بیکار بودم :دی
باقیشو ادامه بده چیزی خفنی میشه


<html>
<head>
<title>..:data swap:..</title>
<script type="text/javascript" src="jq.js"></script>
<style type="text/css">
td {
width: 30px;
height: 30px;
margin: 0 auto;
text-align: center;
}
</style>
</head>
<body>
<table border="1">
<tr>
<td><b>test</b></td>
<td></td>
<td></td>
</tr>
<tr>
<td><b>ali</b></td>
<td></td>
<td><b>hasan</b></td>
</tr>
<tr>
<td></td>
<td><b>mina</b></td>
<td></td>
</tr>
</table>
<script type="text/javascript">
var stack = new Array,i=0;
$("td").click(function () {
stack.length < 2 && stack.push($("td").index(this)) && i++;
if (i==2) {
var h1 = $("td").eq(stack[0]).html();
var h2 = $("td").eq(stack[1]).html();
$("td").eq(stack[0]).html(h2);
$("td").eq(stack[1]).html(h1);
stack = [];
i=0;
}
});
</script>
</body>
</htm>

براکه تو دیتابیس ذخیره کنی باید با هر بار تغییر دوتا فیلد یک درخواست ایجکس به یک اسکریپت php‌بفرستی که توی اون اسکریپت php دو تا فیلد رو از توی دیتابیس جابجا کنند.
همین دیگه !

My_LoVe_IRAN
دوشنبه 28 بهمن 1392, 23:55 عصر
یک نیمچه کد نوشتم الان بیکار بودم :دی
باقیشو ادامه بده چیزی خفنی میشه


<html>
<head>
<title>..:data swap:..</title>
<script type="text/javascript" src="jq.js"></script>
<style type="text/css">
td {
width: 30px;
height: 30px;
margin: 0 auto;
text-align: center;
}
</style>
</head>
<body>
<table border="1">
<tr>
<td><b>test</b></td>
<td></td>
<td></td>
</tr>
<tr>
<td><b>ali</b></td>
<td></td>
<td><b>hasan</b></td>
</tr>
<tr>
<td></td>
<td><b>mina</b></td>
<td></td>
</tr>
</table>
<script type="text/javascript">
var stack = new Array,i=0;
$("td").click(function () {
stack.length < 2 && stack.push($("td").index(this)) && i++;
if (i==2) {
var h1 = $("td").eq(stack[0]).html();
var h2 = $("td").eq(stack[1]).html();
$("td").eq(stack[0]).html(h2);
$("td").eq(stack[1]).html(h1);
stack = [];
i=0;
}
});
</script>
</body>
</htm>

براکه تو دیتابیس ذخیره کنی باید با هر بار تغییر دوتا فیلد یک درخواست ایجکس به یک اسکریپت php‌بفرستی که توی اون اسکریپت php دو تا فیلد رو از توی دیتابیس جابجا کنند.
همین دیگه !

خیلی ممنون بابت جواب ، اما میبخشید ،این که اصلا drag and drop نمیکنه !!!
من با drog o drop میخام ،میشه یه کوچیک توضیح بدین ؟

My_LoVe_IRAN
سه شنبه 29 بهمن 1392, 00:04 صبح
در ضمن ،نمیخام با ajax بریزم تو دیتابیس ،میخام با کلیک باشه ،وقتی کاربر کلیک کرد اطلاعات بره تو دیتا بیس ،همین !

My_LoVe_IRAN
سه شنبه 29 بهمن 1392, 00:09 صبح
سلام،
تغییرتون کوچیک نیست، و یک مقدار مشکل ، خودتون اگه با برنامه نویسی آشنایی دارید از بیس بنویسید بدون jquery ui .
توی این پلاگین فقط نمیدنم موقعت قبلی و جاری رو چطوری بدست بیارم تا بتونم تغییر بدم جاهاشون رو
من با drag and drop میخام ،یعنی جوره دیپه مثل کلیک و ... نمیشه !
مشکل منم دقیقا همینه گه نمیدونم قبلی و بعدی رو چجور بدست بیارم و ... ! البته من تو جی کوئری تازه کارم !

geeking
سه شنبه 29 بهمن 1392, 06:51 صبح
خیلی ممنون بابت جواب ، اما میبخشید ،این که اصلا drag and drop نمیکنه !!!
من با drog o drop میخام ،میشه یه کوچیک توضیح بدین ؟
اینکه من نوشتم با کلیک کار میکنه .باید روی هرچی که میخوای با اون یکی دیگه جابجا بشه click‌کنید تا جابجاشون کنه


در ضمن ،نمیخام با ajax بریزم تو دیتابیس ،میخام با کلیک باشه ،وقتی کاربر کلیک کرد اطلاعات بره تو دیتا بیس ،همین !

برای که صفحه رفرش نشه و بتونی راحت جابجا کنید باید ajax استفاده شود، البته این ایده منه . شاید بعضیها همین کارو بخوان با node.js‌ انجام بدن یا حتی بعضی ها یک onchange‌ روی tdها تنظیم کنند که وقتی جابجا بشن یک درخواست update‌ به رکوردهای دیتابیس بفرستند .

کلا بهتون پیشنهاد میکنم اول jquery رو خوب یاد بگیرید تا هر کار دلتون خواست بتونید بکنید :دی

My_LoVe_IRAN
سه شنبه 29 بهمن 1392, 12:14 عصر
کسی از دوستان نمیتونه کمک کنه ؟ به جز helper تو drag راه دیگه ای نیست که مقدار رو برگردونه ؟!