拖放到文本框中

时间:2011-11-13 01:09:19

标签: php javascript ajax drag-and-drop

我在页面的左侧有一个人员列表,这个列表由PHP填充。

每个人都在他们自己的div(这可以改变,但我认为div可能更容易使用)。我希望能够将这些人中的任何一个拖到文本框中,从而将他们的名字输入到该文本框中。

另外为了让它更尴尬,我真的不想使用jQuery或原型。或其他任何其他人。

修改
对不起让我重新解释一下这个问题......
我如何检查是否有东西被拖到文本框的顶部?我如何获得该元素的ID?

我不知道的是如何检查是否有东西被拖到文本框的顶部(输入框,而不是文本区域,但这不是什么大问题。)
我知道永远不会有像onDragOnto=""这样神奇的传统,但希望这会向你展示我的意思

1 个答案:

答案 0 :(得分:1)

如果没有更多细节,我无法真正提供更好的答案。

如何在DIV元素中单击导致触发的Javascript事件导致选择元素的文本?然后,您可以将此文本拖动到多行文本区域。

现在,使用编辑中的信息:

您将为每个DIV注册一个onmousedown事件。

关于姓名:

<div onmousedown="onMouseDown(event);" onmouseup="onMouseUp(event);">Jane</div>

在textarea / textbox上:

<textarea onmouseover="return onMouseOver(event);"></textarea>

一个剧本:

<script>

function onMouseOver(evt) {
    target = document.lastClicked;
    if (target != null) {
        window.alert(target.id);
    }
}

function onMouseDown(evt) {
    document.lastClicked = window.event.target;
}

function onMouseUp(evt) {
    document.lastClicked = null;
}

</script>

这是一种非常粗暴的做事方式,但我希望这能为您提供您正在寻找的原则。如果你想强制移动元素而不是仅仅使用文本拖放,那么事情会变得更加毛茸茸。要处理这个问题,您需要使用CSS并修改坐标。