Chuyển mô hình dao cạo sang JavaScript

Giả sử bạn có một số văn bản mà bạn muốn chuyển từ bộ điều khiển sang một số JavaScript trong Chế độ xem trong ASP. dự án NET MVC. Bộ điều khiển trong ví dụ của chúng tôi là HomeController. Trong bộ điều khiển đó, chúng tôi có một hành động gọi là Test[]. Chế độ xem được gọi là Kiểm tra. cshtml. JavaScript sẽ gọi một thông báo bật lên toastr của CodeSeven

Bài đăng này là phần đầu tiên của một loạt bài viết ngắn. Phần thứ hai được gọi là Hiển thị tin nhắn bánh mì nướng sau khi người dùng Lưu. Tôi đã tạo một dự án trong Visual Studio có tên là Project1 để kiểm tra mã của bài đăng này

In order for the user to be able to see our page, we have added a link in the navigation bar. That is just a anchor [] element with asp-controller and asp-action properties set.

Từ Bộ điều khiển đến Chế độ xem đến Bảng điều khiển của Trình duyệt

Dưới đây là mã điều khiển. nó đơn giản

public IActionResult Test[] {
    string myMsg = "my test message";
    return View["Test", myMsg];
}

Đây là mã xem. Các tập tin là thử nghiệm. cshtml và nó nằm trong thư mục Views/Home

@model string

Test

Testing Javascript here. Writing to the console. Chrome -> Inspect -> Console.

function sayHi[] { var name = 'Microsoft'; console.log['Hello ' + name + ' ' + '@Model']; } sayHi[];

Dưới đây là những gì bạn thấy trong bảng điều khiển Chrome

Từ Bộ điều khiển đến Chế độ xem đến Tin nhắn chúc mừng

Làm cách nào để bạn chuyển một chuỗi mà người dùng nhập trong biểu mẫu sang thông báo chúc mừng? . Biểu mẫu sẽ đăng lại máy chủ trong một hành động và hành động đó sẽ gửi lại một chế độ xem và đưa chuỗi của người dùng đó vào mô hình. Sau đó, mô hình sẽ được sử dụng trong JavaScript hiển thị cho người dùng khi biểu mẫu được tải

Hãy lấy dự án hiện tại của chúng tôi và thêm vào nó

[HttpGet]
public IActionResult Test[] {
    string myMsg = "my test message";
    return View["Test", myMsg];
}
[HttpPost]
public IActionResult Test[string msg]
{
    string myMsg = msg;
    return View["Test", myMsg];
}

Đây là hình thức

@model string

Test

Test Toast Message $[document].ready[function [] { // show when page load toastr.info["@Model", "Title", toastr.options = { "positionClass": "toast-top-center", "closeButton": true, }]; }];

Giả sử người dùng chạy ứng dụng và nhấp vào Kiểm tra trong menu. Sau đó, họ nhập chuỗi “Chuyển đối tượng C# sang JavaScript trong ASP. NETMVC”

Đây là những gì bánh mì nướng trông giống như

Mã cải tiến. Chỉ hiển thị nếu người dùng nhập nội dung nào đó

Một cải tiến cuối cùng cho mã. Ngay bây giờ, mỗi khi người dùng nhấp vào liên kết Kiểm tra, họ sẽ nhận được lời chúc mừng. Chúng tôi chỉ muốn hiển thị bánh mì nướng nếu người dùng nhập tin nhắn vào hộp nhập liệu. Điều này minh họa JavaScript nếu điều kiện

    $[document].ready[function [] {
        // show when page load if Model is not empty string
        if ["@Model" != ""]
        {
            toastr.info["@Model", "CodeSeven Toastr Tester",
                toastr.options = {
                    "positionClass": "toast-top-center",
                    "closeButton": true,
                }]
        };
    }];    

Trong bài tiếp theo chúng ta sẽ có một view với form. Người dùng nhập văn bản và chúng tôi sẽ đăng văn bản đó lên bộ điều khiển trả về chế độ xem hiển thị thông báo bánh mì nướng. Chế độ xem hiển thị thông báo bánh mì nướng nhận chuỗi trong Mô hình

câu trả lời được chấp nhận

Tôi đã giải quyết vấn đề này

Dung dịch

Người mẫu

public class SalesViewModel
    {
        public string salesdate { get; set; }
        public int salesprice { get; set; }
    }

Dữ liệu

public class SalesContext
    {
        public string ConnectionString { get; set; }

        public SalesContext[string connectionString]
        {
            this.ConnectionString = connectionString;
        }
        public SalesContext[]
        {          
        }

        public List GetAllData[]
        {
            List list = new List[];
            list.Add[new SalesViewModel[] { salesdate = "1", salesprice = 3 }];
            list.Add[new SalesViewModel[] { salesdate = "2", salesprice = 6 }];
            list.Add[new SalesViewModel[] { salesdate = "3", salesprice = 7 }];
            list.Add[new SalesViewModel[] { salesdate = "4", salesprice = 2 }];
            list.Add[new SalesViewModel[] { salesdate = "5", salesprice = 1 }];

            return list;
        }
    }

Bộ điều khiển

using Newtonsoft.Json;
public IActionResult Chart[]
        {
            SalesContext sc = new SalesContext[];
            string json = JsonConvert.SerializeObject[sc.GetAllData[]];
            //ViewData["chart"] = json;
            ViewBag.Sales = json;
            return View[sc.GetAllData[]];
        }

Lượt xem

________số 8

sử dụng var salesdata = @Html.Raw[ViewBag.Sales] để lấy dữ liệu từ bộ điều khiển

sử dụng

@model string

Test

Testing Javascript here. Writing to the console. Chrome -> Inspect -> Console.

function sayHi[] { var name = 'Microsoft'; console.log['Hello ' + name + ' ' + '@Model']; } sayHi[];
0 để đẩy dữ liệu vào tập dữ liệu

Cảm ơn

Làm cách nào để chuyển dữ liệu mô hình trong JavaScript?

Bạn có thể chuyển dữ liệu mô hình vào tệp javascript theo những cách sau [1]. Chỉ cần đặt giá trị trong trường ẩn và truy cập giá trị của trường ẩn trong tập lệnh java . [2]. Và truyền giá trị bằng tham số hàm.

Làm cách nào để chuyển một giá trị từ biến dao cạo sang biến JavaScript?

Bạn không thể . Bạn có thể "chuyển" một biến Razor sang một biến JavaScript nhưng không phải theo cách khác. bản sao có thể có của Cách chuyển các biến JQuery sang Razor? .

Bạn có thể sử dụng JavaScript với Razor không?

Bạn có thể gọi các phương thức JavaScript từ các trang Blazor với sự trợ giúp của JavaScript Interop bằng cách đưa phần phụ thuộc IJSRuntime vào trang dao cạo . Sau đó tham khảo tập lệnh trong trang HTML của ứng dụng blazor.

Làm cách nào để lấy đối tượng JSON từ đối tượng mô hình Razor trong JavaScript?

Bên trong trang Xem của chúng tôi, chúng tôi sẽ chuyển đổi Mô hình dao cạo thành đối tượng JSON và sử dụng nó để lọc bảng HTML. Bạn chỉ có thể chuyển đổi ASP. NET MVC thành đối tượng JSON bằng cách sử dụng. var model = @Html. Thô[Json.

Chủ Đề