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 stringTest
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 stringTest
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ậnTô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ố 8sử dụng var salesdata = @Html.Raw[ViewBag.Sales]
để lấy dữ liệu từ bộ điều khiển
sử dụng
@model string0 để đẩy dữ liệu vào tập dữ liệuTest
Testing Javascript here. Writing to the console. Chrome -> Inspect -> Console.
function sayHi[] { var name = 'Microsoft'; console.log['Hello ' + name + ' ' + '@Model']; } sayHi[];
Cảm ơn