选择目录后,从数据库动态获取数据,并选定父目录
把子目录的id传过去,返回当前目录的名字,父目录的id,名字,然后返回除了当前目录以外的其他目录 ,并且把当前目录的父目录 选定为默认选中项(在遍历的时候加个判断)
<script src="/Scripts/jquery/jquery.min.js" type="text/javascript"></script>
<script src="/Scripts/layer/layer.js" type="text/javascript"></script>
<script src="/Scripts/layui/layui.all.js" type="text/javascript"></script>
<link rel="stylesheet" href="/Scripts/layui/css/layui.css" />
<script type="text/javascript">
$(document).ready(function () {
var selectvalue = ""; //定义这个用来存放选择的value
layui.use('form', function () {
var form = layui.form;
$.get("/api/choosemenu", function (data) {
for (var j in data.rows) {
//alert(data.rows[j].Name);
$("#menuname").append("<option value='" + data.rows[j].menuid + "'>" + data.rows[j].Name + "</option>");
}
form.render();
form.on('select(searchall)', function (data) {
//alert(data.value);
//console.log(data.value);
console.log(data);
selectvalue = data.value; //选定的时候只能获取到value
$.get("/chosemenu/others", {menuid:selectvalue},function (dataother) {
console.log(dataother);
$("#changge").val(dataother.name); //controller传来的数据让input动态更新
for (var g in dataother.rows) {
//console.log(dataother.rows[g].menuid);
//alert(data.rows[j].Name);
if (dataother.rows[g].menuid == dataother.previous) {
$("#searchothers").append("<option value='" + dataother.rows[g].menuid + "' selected>" + dataother.rows[g].Name + "</option>");
}else{
$("#searchothers").append("<option value='" + dataother.rows[g].menuid + "'>" + dataother.rows[g].Name + "</option>");
}
}
layui.form.render();
})
//$("#changge").val(selectvalue);
//$("#searchothers").append("<option value='" + "2" + "' selected >" + "gg" + "</option>");
//把子目录的id传过去,返回当前目录的名字,父目录的id,名字,然后返回除了当前目录以外的其他目录 ,并且把当前目录的父目录 选定为默认选中项(在遍历的时候加个判断)
layui.form.render();
});
})
})
})
</script>
[Route("chosemenu/others")]
public IHttpActionResult getothers()
{
try
{
var request = HttpContext.Current.Request;
var menuid = request.QueryString["menuid"];
//var menu = request.Form["Name"];
SqlConnection sqlConnection =
new SqlConnection(
"Data Source=(local);Initial Catalog=filemaneger;Persist Security Info=True;User ID=sa;Password=123456");
sqlConnection.Open();
string sql = "select menuid,Name from menu where not menuid='"+menuid+"' ";
DataSet dataSet = new DataSet();
SqlDataAdapter sqlDataAdapter = new SqlDataAdapter(sql, sqlConnection);
sqlDataAdapter.Fill(dataSet); //将数据填充进dataset
List<menu> lt = DataSetToList<menu>(dataSet, 0); //用到实体类将数据与实体类映射
var total = lt.Count; //总数
var rows = lt.ToList(); //分页存储到List中
string sqlmenu = "select previousid,Name from menu where menuid='" + menuid + "' ";
DataBase db = new DataBase();
DataTable dt = db.GetDataTable(sqlmenu);
var previousid = dt.Rows[0][0].ToString();
var name = dt.Rows[0][1].ToString();
return Json(new {total = total, rows = rows,previous=previousid,name=name }); //然后才转换成Json传递
}
catch (Exception ex)
{
return Ok(ex.Message);
}
}
实体类:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
namespace filemaneger.Models
{
public class menu
{
public string menuid{get;set;}
public string Name{get;set;}
}
}