js 左边项 --> 右边 转

本文提供了一个使用JavaScript动态创建并操作HTML下拉列表选项的示例,包括添加和删除分包的功能。通过jQuery简化了DOM操作,展示了如何从数据库读取数据动态填充列表。
<!DOCTYPE HTML>
<html>
<head>
<meta charset="gb2312">
<title>111</title>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">

/**
 *动态的给左边的下拉列表创建选项
 *具体情况可以从数据库读取数据动态创建选项
 */
$(document).ready(function(){
    for(var i=1;i<=5;i++)
    {
       $("#fb_list").append("<option value='"+i+"'>公开招标小型机采购00"+i+"</option>"); 
    }
})
$(function(){
  $("#add").click(function(){
       if($("#fb_list option:selected").length>0)
       {
           $("#fb_list option:selected").each(function(){
              $("#select_list").append("<option value='"+$(this).val()+"'>"+$(this).text()+"</option");
              $(this).remove(); 
           })
       }
       else
       {
           alert("请选择要添加的分包!");
       }
   })
})
$(function(){
      $("#delete").click(function(){
           if($("#select_list option:selected").length>0)
           {
               $("#select_list option:selected").each(function(){
                     $("#fb_list").append("<option value='"+$(this).val()+"'>"+$(this).text()+"</option");
                     $(this).remove(); 
               })
           }
           else
           {
               alert("请选择要删除的分包!");
           }
     })
})

</script>
</head>
<body>
<table width="95%" cellpadding="0" align="center" class="listshow" border="1" cellspacing="0">

<tr>
 <td class="black" width="30%" align="center" height="150">
       <select id="fb_list" multiple="multiple" style="text-align:center;width:300px;height:150px;">
        </select> 
    </td>
    <td align="center" width="5%">
    <input type="button" id="add" value="添加>>" />
      <br/>
      <br/>
      <input type="button" id="delete" value="<<删除" />
    </td>
    <td class="black" width="30%" align="center">
    <select id="select_list" multiple="multiple" style=" text-align:center;width:300px;height:150px;">
      </select>
    </td>
</tr>
</table>


</body>
</html>
function SystemStatus({}) { // 模拟初始系统状态数据(添加了version字段) const initialStatusData = { routerImage: "https://example.com/router.png", uploadRate: "1.2 Mbps", downloadRate: "15.8 Mbps", wanStatus: { ipv4: "122.77.241.10", subnetMask: "255.255.255.0", dns1: "8.8.8.8", dns2: "8.8.4.4" }, systemStatus: { model: "FAST FW300R", hostname: "Home-Router", cpuUsage: "24%", memoryUsage: "512MB / 1GB (51%)", uptime: "3天12小时45分钟", version: "V1.2.0" // 新增版本号字段 }, connectionStatus: { onlineDevices: 8, networkConnections: 24 } }; const [status, setStatus] = useState(null); const [refreshTime, setRefreshTime] = useState(new Date()); // 模拟获取系统状态 const refresh = () => { return new Promise(resolve => { setTimeout(() => { setStatus({ ...initialStatusData }); setRefreshTime(new Date()); resolve(); }, 300); }); }; useEffect(() => { refresh(); const interval = setInterval(refresh, 60000); return () => clearInterval(interval); }, []); if (!status) return html`<div class="flex justify-center items-center h-32">加载中...</div>`; return html` <div class="m-4 grid grid-cols-1 gap-4"> <div class="py-1 divide-y border rounded bg-white flex flex-col"> <div class="flex items-center justify-between px-4 py-2"> <div class="font-light uppercase text-gray-600">路由器状态</div> <div class="text-xs text-gray-500"> 最后更新: ${refreshTime.toLocaleTimeString()} <button class="ml-2 text-blue-600 hover:text-blue-800" onClick=${refresh} > 刷新 </button> </div> </div> <div class="py-2 px-5 flex-1 flex flex-col"> <div class="grid grid-cols-1 md:grid-cols-3 gap-4"> <!-- 路由器图片和上下行速率 --> <div class="border rounded p-3 flex flex-col items-center"> <h3 class="text-sm font-medium text-gray-700 mb-2">路由器视图</h3> <img src=${status.routerImage} alt="路由器设备" class="w-32 h-32 object-contain mb-4" /> <div class="text-center"> <div class="text-sm font-medium">${status.systemStatus.model}</div> <div class="text-xs text-gray-500">${status.systemStatus.hostname}</div> </div> <div class="mt-4 w-full"> <div class="flex justify-between mb-1"> <span class="text-xs text-gray-600">上传速率</span> <span class="text-xs font-medium">${status.uploadRate}</span> </div> <div class="w-full bg-gray-200 rounded-full h-2"> <div class="bg-blue-500 h-2 rounded-full" style=${{ width: "30%" }} ></div> </div> <div class="flex justify-between mb-1 mt-2"> <span class="text-xs text-gray-600">下载速率</span> <span class="text-xs font-medium">${status.downloadRate}</span> </div> <div class="w-full bg-gray-200 rounded-full h-2"> <div class="bg-green-500 h-2 rounded-full" style=${{ width: "70%" }} ></div> </div> </div> </div> <!-- WAN口状态 --> <div class="border rounded p-3"> <h3 class="text-sm font-medium text-gray-700 mb-2">WAN口状态</h3> <div class="space-y-2"> <div class="flex justify-between"> <span class="text-sm text-gray-600">IPv4地址</span> <span class="text-sm font-medium">${status.wanStatus.ipv4}</span> </div> <div class="flex justify-between"> <span class="text-sm text-gray-600">子网掩码</span> <span class="text-sm font-medium">${status.wanStatus.subnetMask}</span> </div> <div class="flex justify-between"> <span class="text-sm text-gray-600">DNS1</span> <span class="text-sm font-medium">${status.wanStatus.dns1}</span> </div> <div class="flex justify-between"> <span class="text-sm text-gray-600">DNS2</span> <span class="text-sm font-medium">${status.wanStatus.dns2}</span> </div> </div> </div> <!-- 系统状态(添加了版本号显示) --> <div class="border rounded p-3"> <h3 class="text-sm font-medium text-gray-700 mb-2">系统状态</h3> <div class="space-y-2"> <div class="flex justify-between"> <span class="text-sm text-gray-600">型号</span> <span class="text-sm font-medium">${status.systemStatus.model}</span> </div> <div class="flex justify-between"> <span class="text-sm text-gray-600">主机名</span> <span class="text-sm font-medium">${status.systemStatus.hostname}</span> </div> <!-- 新增版本号显示 --> <div class="flex justify-between"> <span class="text-sm text-gray-600">固件版本</span> <span class="text-sm font-medium">${status.systemStatus.version}</span> </div> <div class="flex justify-between"> <span class="text-sm text-gray-600">CPU使用率</span> <span class="text-sm font-medium">${status.systemStatus.cpuUsage}</span> </div> <div class="flex justify-between"> <span class="text-sm text-gray-600">内存占用</span> <span class="text-sm font-medium">${status.systemStatus.memoryUsage}</span> </div> <div class="flex justify-between"> <span class="text-sm text-gray-600">运行时间</span> <span class="text-sm font-medium">${status.systemStatus.uptime}</span> </div> </div> </div> </div> <!-- 连接状态(已调整为整行显示) --> <div class="mt-4"> <div class="border rounded p-3"> <h3 class="text-sm font-medium text-gray-700 mb-2">连接状态</h3> <div class="grid grid-cols-2 gap-4"> <div class="bg-blue-50 rounded p-3 text-center"> <div class="text-2xl font-bold">${status.connectionStatus.onlineDevices}</div> <div class="text-sm text-gray-600">在线终端</div> </div> <div class="bg-green-50 rounded p-3 text-center"> <div class="text-2xl font-bold">${status.connectionStatus.networkConnections}</div> <div class="text-sm text-gray-600">网络连接数</div> </div> </div> </div> </div> </div> </div> </div>`; } 得到的数据往左移动一点,不要太靠右
07-20
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值