JQuery найти идентификатор Div - PullRequest
1 голос
/ 12 января 2012

Hy,

У меня есть этот код jquery, он сохраняет в базе данных (через ajax) положение div в базе данных, но я не знаю, как перетащить id div, на событие выпадения

$().ready(function () {
    $('.dragDiv').Drags({
        handler: '.handler',
        onMove: function (e) {
            //$('.content').html('Div Position:(Left:' + e.pageX + ' ,Top:' + e.pageY + ')');
            //$('.content').html(done);
        },
        onDrop: function (e) {
            //$('.content').html('dropped!' + e.pageX);
            $.ajax({
                url: 'includes/scripts/data.php',
                data: "top=" + e.pageX + "&left=" + e.pageY + ""
            });
        }
    });
    $('.dragDiv2').Drags({
        handler: '.handler2',
        zIndex: 200,
        opacity: .9
    });
});

Ответы [ 3 ]

2 голосов
/ 12 января 2012

Используйте это:

$('.dragDiv').attr("id");

РЕДАКТИРОВАТЬ

Если вы хотите попробовать это, вы можете попробовать получить идентификатор в функции onDrag, используя:

var id = $(this).attr('id');

Убедитесь, что это правильный идентификатор для div, и если это так, это будет рекомендуемая методология.


РЕДАКТИРОВАТЬ Хорошоpoint 'Shadow Wizard'

var id = this.id;

EDIT

Если все предыдущие методы не сработали, используйте цель события jQuery:

var $target = $(e.target);
var id = null;
if($target.hasClass('dragDiv')) {
    id = $target[0].id;
} else {
    id = $target.parents('.dragDiv').first()[0].id;
}

Это должно войти в ваш onDrag метод.

1 голос
/ 12 января 2012

Я думаю, вы можете просто использовать ключевое слово "this", чтобы получить объект, который перетаскивается.

Значит, вы могли бы написать $(this).attr("id")

0 голосов
/ 12 января 2012

Я не знаю этот .Drags() плагин, но логично использовать this.id внутри его обработчиков событий должно быть достаточно ..

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...