Могу ли я присвоить переменную c # оператору return функции javascript?

#c# #javascript #asp.net-mvc-3 #razor

#c# #javascript #asp.net-mvc-3 #razor

Вопрос:

Предположим, у меня есть переменная C # с именем currentTab в моем представлении razor.

У меня есть коды javascript, которые говорят..

 <script type="text/javascipt">
    function CurrentTabReturner(){
        var currTab = $("a.current").attr("id");
        return currTab;
    }
</script>
 

Теперь я хочу сделать это:

 @currentTab = CurrentTabReturner();
 

Возможно ли это? Или есть какие-либо другие способы добиться этого?

Заранее спасибо.

Ответ №1:

Возможно ли это?

Нет, это невозможно. Переменные на стороне сервера существуют на сервере. JavaScript на стороне клиента запускается внутри клиентского браузера намного позже, когда больше не существует никаких серверных переменных. Поэтому попытка присвоить серверную переменную функции на стороне клиента просто не имеет смысла. На клиенте вы можете отправлять обычные или асинхронные (AJAX) запросы на сервер, чтобы переменные на стороне сервера могли обновляться.