PDA

View Full Version : سوال: مشکل در دستور شرط در jquery



ABZiko
دوشنبه 10 شهریور 1393, 13:33 عصر
سلام، من می خوام وقتی که از یک تگ من فقط یک دونه (1) مونده بود، دکمه delete ام حذف بشه، این کد هم نوشتم ولی موقعی که با دکمه add از این تگ ها افزوده بشه، دیگه دکمه نمایش داده نمی شه!! چرا؟

if($('<div class="choose"><input type="file" name="userFile" /></div>').length=1){

$('.delete').css('display','none');

}

else{

$('.delete').css('display','block');

}

دانیال دزفولی
دوشنبه 10 شهریور 1393, 13:58 عصر
سلام، من می خوام وقتی که از یک تگ من فقط یک دونه (1) مونده بود، دکمه delete ام حذف بشه، این کد هم نوشتم ولی موقعی که با دکمه add از این تگ ها افزوده بشه، دیگه دکمه نمایش داده نمی شه!! چرا؟

if($('<div class="choose"><input type="file" name="userFile" /></div>').length=1){

$('.delete').css('display','none');

}

else{

$('.delete').css('display','block');

}




نمیشه یه نمونه آنلاین بذاری؟

Mori Bone
دوشنبه 10 شهریور 1393, 15:21 عصر
توی شرط از == استفاده کن

ABZiko
دوشنبه 10 شهریور 1393, 16:26 عصر
نمیشه یه نمونه آنلاین بذاری؟
نه نمی شه :لبخند:

ABZiko
دوشنبه 10 شهریور 1393, 16:27 عصر
توی شرط از == استفاده کن

قسمت افزودنش درست شد ولی باز هم بعد از اضافه شدن Input، دکمه حذفش اضافه نمی شه.

ABZiko
دوشنبه 10 شهریور 1393, 16:28 عصر
کل کد ها رو می زارم :



$(document).ready(function(e){

$('.add').click(function(e){

$('.addon').append('<div class="choose"><input type="file" name="userFile" /></div>');

});

$('.delete').click(function(e){

$('.addon > .choose').last().remove();

});

if($('<div class="choose"><input type="file" name="userFile" /></div>').length==1){

$('.delete').css('display','none');

}

else{

$('.delete').css('display','block');

}

});

ABZiko
دوشنبه 10 شهریور 1393, 23:05 عصر
دوستان اگر کمک کنن ممنون می شم.

دانیال دزفولی
دوشنبه 10 شهریور 1393, 23:38 عصر
دستور ایف رو بذار توی کلیک شدن

2undercover
سه شنبه 11 شهریور 1393, 06:18 صبح
$('.delete').click(function () {
// Remove last input
if ($('.addon > .choose').length == 1) {
$('.delete').hide();
}
});

ABZiko
سه شنبه 11 شهریور 1393, 23:11 عصر
باز هم کار نکرد، اگر روی دکمه delete کلیک شد، دکمه رو حذف می کنه در صورتی که از قبل شاید کسی چند تا دکمه اضافه کرده باشه.

دانیال دزفولی
سه شنبه 11 شهریور 1393, 23:23 عصر
باز هم کار نکرد، اگر روی دکمه delete کلیک شد، دکمه رو حذف می کنه در صورتی که از قبل شاید کسی چند تا دکمه اضافه کرده باشه.
دقیقا چی میخوای؟

ABZiko
سه شنبه 11 شهریور 1393, 23:33 عصر
دقیقا بالا گفتم وقتی که از input type file فقط یک دونه مونده بود، دکمه delete که مربوط به حذف کردنش هست رو نمایش نده، سوالم خیلی واضح هست.

دانیال دزفولی
سه شنبه 11 شهریور 1393, 23:35 عصر
دقیقا بالا گفتم وقتی که از input type file فقط یک دونه مونده بود، دکمه delete که مربوط به حذف کردنش هست رو نمایش نده، سوالم خیلی واضح هست.
خوب الآن دقیقا مشکلت با کد های علی چیه؟

Mori Bone
سه شنبه 11 شهریور 1393, 23:39 عصر
توی رویداد کلیک دکمه add هم همینو بنویس.
$('.delete').show();

ABZiko
سه شنبه 11 شهریور 1393, 23:40 عصر
اون رو هم گفتم، کد های ایشون این طوری کار می کنه که اگر فقط یک بار دکمه delete کلیک شد، دکمه حذف می شه ربطی به تعداد input ها نداره.

ABZiko
سه شنبه 11 شهریور 1393, 23:44 عصر
توی رویداد کلیک دکمه add هم همینو بنویس.
$('.delete').show();
تشکر تا جدودی درست شد، ولی باز هم مشکل داره، موقعی که دکمه delete کلیک شد، حذف می شه ولی باز هم به تعداد input ها کاری نداره ولی با کد شما وقتی دکمه حذف شد ، اگر کلیک add رو بزنم دوباره می آد ولی می گم باز هم به تعدادشون کاری نداره.

Mori Bone
سه شنبه 11 شهریور 1393, 23:46 عصر
چی به تعداد input ها کار نداره؟
یه نمونه آنلاین بگذارید

ABZiko
چهارشنبه 12 شهریور 1393, 00:00 صبح
توی رویداد کلیک دکمه add هم همینو بنویس.
$('.delete').show();
تشکر تا جدودی درست شد، ولی باز هم مشکل داره، موقعی که دکمه delete کلیک شد، حذف می شه ولی باز هم به تعداد input ها کاری نداره ولی با کد شما وقتی دکمه حذف شد ، اگر کلیک add رو بزنم دوباره می آد ولی می گم باز هم به تعدادشون کاری نداره.

ABZiko
چهارشنبه 12 شهریور 1393, 00:01 صبح
یعنی اگر تعداد input ها مثلا سه تا باشه و دکمه پاک کردن زده بشه، علاوه بر اینکه input حذف می شه دکمه هم حذف می شه ولی وقتی که دوباره روی افزودن کلیک بشه و append بشه ، دوباره دکمه نمایش داده می شه ولی من می خوام وقتی یک دونه input موند، دکمه delete حذف بشه.

ABZiko
چهارشنبه 12 شهریور 1393, 00:04 صبح
ولی ابتداش درسته ، چون اولش یک دونه input هست ، دکمه delete هم نمایش داده نمی شه ولی وقتی که چند ا اضافه بشه و حتی پاک بشه و به آخری هم برسه ، ئکمه حذف نمی شه.

Mori Bone
چهارشنبه 12 شهریور 1393, 00:23 صبح
واسه add:
if ($('.addon > .choose').length > 1) {
$('.delete').show();
}

ABZiko
چهارشنبه 12 شهریور 1393, 00:32 صبح
تشکر ولی باز هم کار نکرد.

ABZiko
چهارشنبه 12 شهریور 1393, 00:35 صبح
شما teamviewer دارین؟