常见问题一之拼接表格 js传递参数变量 Json接收值
1.前台拼接表格时,有时候需要使用拼接html字符串,需要多次循环拼接的,放在方法里边:
//ary可以是数组中的一组数据.
function(ary)
{
var MyHtml="<tr>";
MyHtml+="<td>" + ary.ID + "</td>";
MyHtml+="<td>" + '<input type="radio" name="toggle" valuestr="'+ary.Name+'"/>' + "</td>";
MyHtml="</tr>";
}
2.利用javascript和@url.action()传递参数变量。
//url字符串
var urlstr = '@Url.Action("Index", "Home")' + "?Id=" +id; //更改
$("#btnok").attr("href", urlstr);
3.利用从json后台传送一个实体类到前台。
public JsonResult JsonTest() { var Model = db.Model.First(x => true); //var Model = db.Model.Where(x => true).Take(1).ToList(); //序列化对象 string str = JsonConvert.SerializeObject(Model); return Json(str); } //前台接收 $("#btnok2").click(function () { $.ajax({ type: "post", url: "@Url.Action("JsonTest", "Home")", data: { }, //传递json字符串 需要使用 JSON.stringify(ary) cache: false, dataType: "json", success: function(data) { var ary2 = JSON.parse(data); alert(ary2.ID + "." + ary2 + "," + ary2.Name); //alert(ary2[0].ID + "." + ary2 + "," + ary2[0].Name); } })
4.json传递数据方式二:传递一个List<JsonClass>。
public JsonResult JsonTest2(int id) { string str = string.Empty; if (id == 1) { JsonClass jsonClass = new JsonClass() { ID = 1, Name = "xx", Sex = "男" }; List<JsonClass> list = new List<JsonClass>(); list.Add(jsonClass); list.Add(new JsonClass { ID = 2, Name = "oo", Sex = "女" }); str = JsonConvert.SerializeObject(list); } return Json(str, JsonRequestBehavior.AllowGet); } //定义类别 public class JsonClass { public int ID { get; set; } public string Name { get; set; } public string Sex { get; set; } }
5.接收前台传过来的Json字符串
[HttpPost] public ActionResult Edit(string ary) { // ary = "[{\"type\":\"0\",\"Id\":\"3\",\"serial\":\"2\"},{\"type\":\"0\",\"Id\":\"2\",\"serial\":\"1\"}]"; var emply = new { ID = 0, Name = string.Empty,Sex = string.Empty }; if (ary.Length>0) { JArray jsonary = (JArray)JsonConvert.DeserializeObject(ary); string str = string.Empty; for(int i=0;i<jsonary.Count;i++) { JObject obj = (JObject)jsonary[i]; var array = JsonConvert.DeserializeAnonymousType(obj.ToString(), emply); str += array.ID + array.Name + array.Sex; //第二种接收值方式: int Id; string Name, Sex; Id = Convert.ToInt32(obj["ID"].ToString()); Name = obj["Name"].ToString(); Sex = obj["Sex"].ToString(); } } return RedirectToAction("Index"); } }
以上为平时遇到,或者遇到后又遗忘的一些些问题。备以记录,以供查询。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
· 零经验选手,Compose 一天开发一款小游戏!