zoukankan      html  css  js  c++  java
  • ASP.NET MVC的一些知识点

    1.前台向后台页面传值

    (1)ajax方式

    $.ajax({
        type:'POST', // 规定请求的类型(GET 或 POST)
        url:uploadV, // 请求的url地址
        dataType:'json', //预期的服务器响应的数据类型 
        data:{},//规定要发送到服务器的数据
        beforeSend:function(){ //发送请求前运行的函数(发送之前就会进入这个函数)
            // ....
        },
        success: function(result){ // 当请求成功时运行的函数
            //...
        },
        error:function(result){ //失败的函数
            //...
        },
        complete:function(){ //请求完成时运行的函数(在请求成功或失败之后均调用,即在 success 和 error 函数之后,不管成功还是失败 都会进这个函数)
            // ...
        }
    });

    (2)通过form表单提交方式

    <form action="~HookPlanIndex" method="post" oninput="x.value = parseInt(firstinput.value) + parseInt(secondinput.value)">
        <p>FirstNumber:</p>
        <input type="number" id="firstinput" name="first_input" placeholder="FirstNumber" /><br />
        <p>SecondNumber:</p>
        <input type="number" id="secondinput"  name="second_input" placeholder="SecondNumber" /><br />
        <input type="submit" value="提交" id="input_sub" /><br />
        <output name="x" for="firstinput secondinput"> </output>
    </form>

    第一种建立实体类

    public IActionResult Index(Test_Number collection) 
            {
                var number1 = collection.first_input;
                var number2 = collection.second_input;
                Console.WriteLine(int.Parse(number1) +int.Parse(number2));
            }

    第二种直接参数形式

    public IActionResult Index(string first_input,string second_input) 
            {
                Console.WriteLine(int.Parse(first_input) +int.Parse(second_input));
            }

    第三种FormCollection方式

    public ActionResult GetUserInfo(FormCollection collection) {
    
                string username = collection["first_input"];
                string password = collection["second_input"];
           }

    2.后台向前台页面传值

    public class Products
     {
       public int Id { get; set; }
       public string Name { get; set; }
       public double Price { get; set; }
     }
    var p = new Products()
          {
            Id = 1,
            Name = "饮料",
            Price = 2.5
          };

    (1)第一种方式ViewData

    ViewData["person"] = p;

    (2)第二种方式ViewBag

    ViewBag._Product = p;

    (3)第三种方式

    public ActionResult Index()
     
        {
     
          var p = new Products()
     
          {
     
            Id = 1,
     
            Name = "饮料",
     
            Price = 2.5
     
          };
     
          return View(p);
     
        } 

    前台

    @using MvcTest.Models;
    @model Products
    @{
      ViewBag.Title = "Index";
    }
    <h1>@Model.Id</h1>
    <h2>@Model.Name</h2>
    <h3>@Model.Price</h3>

    (4)第四种方式TempData

    public ActionResult Index()
        {
          var p = new Products()
          {
            Id = 1,
            Name = "饮料",
            Price = 2.5
          };
          TempData["_product"] = p;
          return RedirectToAction("Order");
        }
        public ActionResult Order()
        {
          return View();
        }

    前台

    @{
      Products p = (Products)TempData["_product"];
    }

    这种方式只能传递1次

    3.页面跳转的方式

    (1)js方式

    window.location='/Blog/Index

    (2)c#方式

    RedirectToAction()

    (3)HTML辅助器模式

    @Html.ActionLink("nihao", "Here")
  • 相关阅读:
    String前后去掉空格、option只能定义value值吗?还能添加什么值。dom和Jquery对象转换。
    JsonObject没有fromObject、idea引入maven有红线没依赖、JsonObject maven 依赖包
    json几个小例子
    [极客大挑战 2019]PHP1
    栈溢出原理笔记(一)
    CentOS7怎么安装图形界面
    快速搭建WordPress博客
    Mac 安装Mysql 之 Sqlservice 区别
    Metasploit-初篇
    Windows To Go 制作详解
  • 原文地址:https://www.cnblogs.com/daimaxuejia/p/12502298.html
Copyright © 2011-2022 走看看