Hướng dẫn razor get value from javascript - dao cạo lấy giá trị từ javascript

Được rồi, vì vậy câu hỏi này đã cũ ... nhưng tôi muốn làm một cái gì đó tương tự và tôi đã tìm thấy một giải pháp phù hợp với tôi. Có lẽ nó có thể giúp người khác.

Tôi có một List mà tôi điền vào một thả xuống. Tôi muốn đặt lựa chọn đó vào thuộc tính QuestionType trên đối tượng Question mà tôi đang tạo trong biểu mẫu. Tôi đang sử dụng

@Html.Hidden("NewQuestion.QuestionTypeJson", Model.NewQuestion.QuestionTypeJson)
0 để chọn ràng buộc. Điều này đặt thuộc tính có thể quan sát được
@Html.Hidden("NewQuestion.QuestionTypeJson", Model.NewQuestion.QuestionTypeJson)
1 thành đối tượng QuestionType khi người dùng chọn một thuộc tính.


Tôi có một trường ẩn sẽ giữ đối tượng này:

@Html.Hidden("NewQuestion.QuestionTypeJson", Model.NewQuestion.QuestionTypeJson)

Trong đăng ký cho người có thể quan sát được, tôi đặt trường ẩn thành phiên bản ____ 13-ed của đối tượng.

self.QuestionType.subscribe(function(newValue) {
    if (newValue !== null && newValue !== undefined) {                       
        document.getElementById('NewQuestion_QuestionTypeJson').value = JSON.stringify(newValue);
    }
});

Trong đối tượng Question, tôi có một trường gọi là

@Html.Hidden("NewQuestion.QuestionTypeJson", Model.NewQuestion.QuestionTypeJson)
5 được điền khi người dùng chọn loại câu hỏi. Tôi sử dụng trường này để có được QuestionType trong đối tượng Question như thế này:

public string QuestionTypeJson { get; set; }

private QuestionType _questionType = new QuestionType();
public QuestionType QuestionType
{
    get => string.IsNullOrEmpty(QuestionTypeJson) ? _questionType : JsonConvert.DeserializeObject(QuestionTypeJson);
    set => _questionType = value;
}

Vì vậy, nếu trường

@Html.Hidden("NewQuestion.QuestionTypeJson", Model.NewQuestion.QuestionTypeJson)
5 chứa một cái gì đó, nó sẽ giảm dần điều đó và sử dụng nó cho QuestionType, nếu không nó sẽ chỉ sử dụng những gì trong trường sao lưu.

Về cơ bản, tôi đã 'truyền' một đối tượng JavaScript cho mô hình của mình mà không cần sử dụng cuộc gọi

self.QuestionType.subscribe(function(newValue) {
    if (newValue !== null && newValue !== undefined) {                       
        document.getElementById('NewQuestion_QuestionTypeJson').value = JSON.stringify(newValue);
    }
});
0 hoặc
self.QuestionType.subscribe(function(newValue) {
    if (newValue !== null && newValue !== undefined) {                       
        document.getElementById('NewQuestion_QuestionTypeJson').value = JSON.stringify(newValue);
    }
});
1. Bạn có thể làm điều gì đó tương tự như thế này mà không cần sử dụng
@Html.Hidden("NewQuestion.QuestionTypeJson", Model.NewQuestion.QuestionTypeJson)
0, nhưng đó là những gì tôi đang sử dụng ...

Làm thế nào tôi có thể chuyển giá trị cho các biến dao cạo từ trang JavaScript trong .cshtml (dao cạo) (ASP.NET MVC C#)?

Một cái gì đó như thế này

@{
    int x = 0;
}

Có thể không? Cảm ơn


Hỏi bởi:- pika

1

: 23577at:- 7/17/2017 3:58:58 PM At:- 7/17/2017 3:58:58 PM

JavaScriptjqueryC#MVCasp-net jquery C# MVC asp-net


Tôi nghĩ rằng câu hỏi của bạn là không chính xác, vui lòng kiểm tra lại trong tiêu đề, bạn đã hỏi 'Làm thế nào để chuyển giá trị dao cạo cho JavaScript' trong khi trong mã ví dụ, bạn đang cố gắng nhận giá trị trong dao cạo từ JavaScript, không thể 00

Bởi: Vikas_jk - tại: - 7/18/2017 7:06:33 AM

Ok, đã cập nhật câu hỏi của tôi, tôi muốn biết về cách chuyển giá trị cho dao cạo từ JavaScript? 00

Bởi: Pika - tại: - 7/18/2017 7:25:34 AM


2 câu trả lời

Điều này là không thể, bạn không thể chuyển giá trị từ JavaScript sang Dao cạo vì cả hai không có mặt cùng một lúc, dao cạo là ngôn ngữ bên máy chủ trong khi JavaScript là khách hàng & NBSP; Ngôn ngữ phụ, dao cạo không còn tồn tại sau khi trang được gửi đến " Phía khách hàng".both are not present at the same time, Razor is server side language while javascript is client side language, razor doesn't exist anymore after the page was sent to the "Client side".

Bạn có thể thay đổi HTML/CSS/JavaScript bằng cách sử dụng các biến Razor & nbsp;, nhưng nó không đúng với ngược lại. & NBSP; Khi máy chủ nhận được yêu cầu xem, nó sẽ tạo chế độ xem chỉ bằng mã HTML, CSS và JavaScript. Không còn mã C#, tất cả đều được "dịch" sang ngôn ngữ phía máy khách.

Bạn có thể kiểm tra nguồn trang của mình từ trình duyệt Bạn sẽ không có bất kỳ mã C# nào, tất cả được chuyển đổi thành HTML, CSS, JavaScript.

2

Tại:- 7/18/2017 7:40:18 AM

OK, tôi đã cố gắng tải giá trị trong @viewbag.theme = localStorage.getItem ('style_color'); nhưng thất bại theo câu trả lời trên của bạn 00

Bởi: Pika - tại: - 10/16/2017 11:49:47 AM

Có thể sử dụng điều này, không phải là một giải pháp thích hợp, nhưng bạn có thể tạo trường ẩn và đặt nó bằng JavaScript, một cái gì đó giống như

@Html.Hidden("MyId", 0);

Và JavaScript sẽ

1

Tại:- 9/5/2017 4:32:22 PM





Có thể chuyển giá trị từ JavaScript sang Dao cạo không?

Cảm ơn điều này là không thể, bạn không thể chuyển giá trị từ JavaScript sang Dao cạo vì cả hai không có mặt cùng một lúc, dao cạo là ngôn ngữ phía máy chủ trong khi JavaScript là ngôn ngữ phía máy khách, dao cạo không còn tồn tại sau khi trang được gửi đến " Phía khách hàng".

Các biến dao cạo là gì?

Các biến dao cạo là "các biến phía máy chủ" và chúng không còn tồn tại nữa sau khi trang được gửi đến "phía máy khách". Khi máy chủ nhận được yêu cầu xem, nó sẽ tạo chế độ xem chỉ bằng mã HTML, CSS và JavaScript. Không còn mã C#, tất cả đều được "dịch" sang ngôn ngữ phía máy khách.

Làm thế nào để đọc từ Chế độ xem Dao cạo đến JavaScript phía máy khách?

Biến phía máy chủ có thể đọc được cho Biến phía máy khách JavaScript bằng cách sử dụng biến phía máy khách JavaScript có thể đọc đến Chế độ xem Dao cạo bằng cách sử dụng @:

Có thể nhận được giá trị của hộp văn bản bằng cách sử dụng MVC Dao cạo không?

} Có thể nhận được giá trị của hộp văn bản bằng cách sử dụng MVC Dao cạo không? Nguyên nhân sử dụng getEuityByid dường như không hoạt động trong dao cạo ... đúng nhưng sau đó nó không thể được truy cập trong câu lệnh IF khi lặp qua kết quả ... không bị giảm bởi các liên kết. Bạn rõ ràng là người mới đối với Dao cạo và MVC & JavaScript.

Làm thế nào để chuyển biến JavaScript sang Dao cạo?

Điều này là không thể, bạn không thể chuyển giá trị từ JavaScript sang dao cạo vì cả hai không có mặt cùng một lúc, dao cạo là ngôn ngữ phía máy chủ trong khi JavaScript là ngôn ngữ phía máy khách, dao cạo không tồn tại nữa sau khi trang được gửi đến "máy khách cạnh".you cannot pass value from javascript to razor because both are not present at the same time, Razor is server side language while javascript is client side language, razor doesn't exist anymore after the page was sent to the "Client side".

Làm cách nào để truy cập vào túi từ JS?

var c = "#" + "@viewbag.cc";var d = $ ("#" + "@viewbag.cc"). Giá trị;var e = $ ("#" + "@viewbag.cc"). val ();var c = "@viewbag.cc";var d = $ ("@viewbag.cc"). value; var e = $("#" + "@ViewBag.CC"). val(); var c = "@ViewBag.CC"; var d = $("@ViewBag.CC").

Làm thế nào để bạn có được giá trị trường ẩn trong chế độ xem dao cạo?

Tạo một trường ẩn trong ASP.NET MVC..
Ví dụ: Mô hình sinh viên.lớp công khai sinh viên {public int studentId {get;bộ;} chuỗi công khai StudentName {get;bộ;}}.
Ví dụ: HiddenFor () trong Chế độ xem dao cạo.@Model sinh viên @html.hiddenfor (m => m.studentid).
Ví dụ: html.hidden () trong chế độ xem dao cạo.@Model sinh viên @html.hidden ("studentId").

Làm thế nào để bạn vượt qua một biến tập lệnh trong HTML?

Tìm hiểu cách sử dụng giá trị biến JavaScript trong trang HTML ...
Hiển thị biến bằng tài liệu.viết phương pháp..
Hiển thị biến cho nội dung phần tử HTML bằng cách sử dụng thuộc tính bên trong ..
Hiển thị biến bằng cửa sổ.Phương thức cảnh báo () ..