Pass js variable or inout value to razor

戏子无情 提交于 2019-12-29 07:59:33

问题


Is it possible to pass js variable or html value to razor?

@{
    int n = ?????;
    Html.RenderPartial("_AddressBookEdit", @Model.Addresses[n]);
}

How can I set variable n from javascript or assign it a value from a hidden field?

n = $('#myvar').val()'; 

The above code does not work.


回答1:


You are missing a fundamental understanding here. I already answered a version of this question by you, however I did not think you misunderstood this point.

You cannot pass anything from javascript to razor without going through the server.

That is because the razor is executed server side (hence the c# in it). The controller is called, that class is instantiated, then the method is invoked which matches the action requested, and then a view is returned. When the view is returned, the c# code in the view is executed. Once all code has been executed, it issues the html page in the response and then the javascript runs on the client. For you to get from javascript to razor, you would have to issue a new request to go through that path from the beginning in order to come back out in the end.

Solve this issue server side.



来源:https://stackoverflow.com/questions/15991161/pass-js-variable-or-inout-value-to-razor

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!