Javascript 使用jQuery将元素拖放到文本框中 当我把一个Li元素放到文本框中时,它会在中间排列……在开始时如何排列这些元素?我用基金会
可能有问题吗 我的jQuery:Javascript 使用jQuery将元素拖放到文本框中 当我把一个Li元素放到文本框中时,它会在中间排列……在开始时如何排列这些元素?我用基金会,javascript,jquery,css,jquery-ui,Javascript,Jquery,Css,Jquery Ui,可能有问题吗 我的jQuery: <script type="text/javascript"> $(function() { $("#dragdiv li").draggable({ helper: "clone", cursor: "move", revert: "invalid" }); initDroppable($("#dropdiv"));
<script type="text/javascript">
$(function() {
$("#dragdiv li").draggable({
helper: "clone",
cursor: "move",
revert: "invalid"
});
initDroppable($("#dropdiv"));
function initDroppable($elements) {
$elements.droppable({
activeClass: "ui-state-default",
hoverClass: "ui-drop-hover",
accept: ":not(.ui-sortable-helper)",
over: function(event, ui) {
var $this = $(this);
},
drop: function(event, ui) {
var $this = $(this);
if ($this.val() == '') {
$this.val(ui.draggable.text());
} else {
$this.val($this.val() + "," + ui.draggable.text());
}
}
});
}
});
</script>
<style type="text/css">
#dropdiv ul
{
display: inline-block !important;
float: left;
}
#dragdiv ul{
margin-top:20px;
}
</style>
$(函数(){
美元(“#dragdiv li”)。可拖动({
助手:“克隆”,
光标:“移动”,
回复:“无效”
});
initDroppable($(“#dropdiv”);
函数initdropable($elements){
$elements.dropable({
activeClass:“ui状态默认值”,
hoverClass:“ui放置悬停”,
接受:“:非(.ui可排序帮助程序)”,
结束:功能(事件、用户界面){
var$this=$(this);
},
drop:函数(事件、用户界面){
var$this=$(this);
如果($this.val()=''){
$this.val(ui.draggable.text());
}否则{
$this.val($this.val()+”,“+ui.draggable.text());
}
}
});
}
});
#滴灌
{
显示:内联块!重要;
浮动:左;
}
#德拉格迪夫{
边缘顶部:20px;
}
Html:
标记:
-
怎么做这个?请帮帮我
<p><b>Taguri:</b></p>
<input id="dropdiv" type="text" style="width:605" />
<div id="dragdiv">
<ul id="allItems">
<li id="node" runat="server">
first tag </li>
<li id="node" runat="server">
second tag </li>
<li id="node" runat="server">
third tag </li>
</ul>
</div>
塔古里:
-
第一标签
-
第二标签
-
第三标签
在每个li
元素中,文本周围都有一堆选项卡,它们也在被复制
更改php,使其没有选项卡
<li id="node" runat="server"><?php echo $t['name'] ?></li>
请注意,我添加了trim()
,以消除前导空格和尾随空格
我已经修改了您的代码。此代码将项目附加到列表中 HTML
从这里拖动
标签1
标签2
标签3
到这里来
JQuery
$(“#dragdiv li”).draggable({
助手:“克隆”,
光标:“移动”,
回复:“无效”
});
$(“#dropdiv”)。可拖放({
activeClass:“ui状态默认值”,
hoverClass:“ui放置悬停”,
接受:“:非(.ui可排序帮助程序)”,
drop:函数(事件、用户界面){
var$this=$(this);
if($this.val().indexOf(ui.draggable.text())<0){
如果($this.val()=''){
$this.val(ui.draggable.text());
}否则{
$this.val($this.val()+”,“+ui.draggable.text());
}
}否则{
$this.val($this.val().replace(ui.draggable.text(),“”));
}
}
});
你能发布呈现的html而不是php吗?这会让我们更容易测试你正在使用的代码。你可以在这里找到你发布的php的html。请查看源代码,复制并粘贴。我们无法从您发布的内容中看到html。我发布了htmlNo问题-很高兴提供帮助。但是,如果元素被拖动,如何删除它?如果再次删除它,是否要删除该文本?我已根据需要对其进行了修改。因为这不是问题的一部分,所以我不会在我的答案中贴出来。。。。
<li id="node" runat="server"><?php echo $t['name'] ?></li>
drop: function (event, ui) {
var $this = $(this);
if ($this.val() == '') {
$this.val(ui.draggable.text().trim());
} else {
$this.val($this.val() + "," + ui.draggable.text().trim());
}
}
<h2>Drag from here</h2>
<div id="dragdiv">
<ul id="allItems">
<li class="node" runat="server">Tag 1</li>
<li class="node" runat="server">Tag 2</li>
<li class="node" runat="server">Tag 3</li>
</ul>
</div>
<h2>Drop here</h2>
<input id="dropdiv" type="text" style="width:605" />
$("#dragdiv li").draggable({
helper: "clone",
cursor: "move",
revert: "invalid"
});
$( "#dropdiv" ).droppable({
activeClass: "ui-state-default",
hoverClass: "ui-drop-hover",
accept: ":not(.ui-sortable-helper)",
drop: function(event, ui) {
var $this = $(this);
if($this.val().indexOf(ui.draggable.text()) < 0 ) {
if ($this.val() == '') {
$this.val(ui.draggable.text());
} else {
$this.val($this.val() + "," + ui.draggable.text());
}
}else{
$this.val($this.val().replace(ui.draggable.text(),''));
}
}
});