我正在使用redips javascript创建一个拖放系统。
这是我使用html和php生成数据的脚本
<div id="base">
<table>
<tbody>
<?php
foreach($deviceID as $row)
{
echo '<tr><td><div class="drag">'.$row['description'].'<input type="hidden" id="bus" value="'.$row['description'].'"></div></td></tr>';
}
?>
</tbody>
</table>
</div>这是我的javascript文件的片段。
var redips_init;
redips_init = function () {
// reference to the REDIPS.drag
var rd = REDIPS.drag;
// initialization
rd.init();
rd.drop_option = 'shift';
rd.animation_shift = true;
rd.myhandler_dropped = function () {
alert($('#bus').val());
}
};发布于 2012-04-18 17:30:50
我不擅长php,但我在jsp中通常做的是创建一个本地索引变量,并将其附加到循环中的每个ID属性中。
因此,您的代码将如下所示
<?php
$index=0;
foreach($deviceID as $row)
{
echo '<tr><td><div class="drag">'.$row['description'].'<input type="hidden" id="bus'.$index++.'" value="'.$row['description'].'"></div></td></tr>';
}
?>在javascript中,你的dragAndDrop事件应该返回一个索引位置,你可以通过这个位置获得合适的值。
现在,您可以在JavaScript中使用这个动态ID来做任何您想做的事情。
发布于 2012-06-29 19:56:59
REDIPS.drag包含save_content()方法,用于扫描表中的所有DIV元素,并以查询字符串或JSON对象的形式返回结果。输入参数为表id和返回结果的类型(默认为查询字符串)。如果这还不够好,您可以搜索save_content()源代码并进行定制。方法很简单,它使用几个循环来扫描表内容。
另一方面,如果您需要知道被删除的DIV元素的ID,可以在myhandler_dropped事件处理程序中写入。下面是代码片段:
rd.myhandler_dropped = function () {
// define DIV id
var id = rd.obj.id;
// write DIV id to the console
console.log(id)
};希望这个答案能有所帮助。
https://stackoverflow.com/questions/10206342
复制相似问题