Access ViewBag in JS file - Asp.net MVC

KCS Nirav picture KCS Nirav · Mar 26, 2013 · Viewed 16k times · Source

I have one Viewbag. I have fill that viewbag value from server side in Action result method. I need to access this Viewbag value in Js file. I have access this Viewbag in *.cshl page properly. Here below shown my sample code,

Var objMode = '@ViewBag.Mode'; //Written in *.cshtml page.

but i need to access this value like above syntax in *.js file.

Thanks, Nirav Parikh

Answer

karaxuna picture karaxuna · Mar 26, 2013

You can't. You can write ViewBag value in hidden input and then read it from js file:

<input type="hidden" value="@ViewBag.Mode" id="mode" />

JS file:

var mode = document.getElementById('mode').value;

EDIT: Another option:

<script src="..." type="text/javascript" onload="InitMyScript('@ViewBag.Mode')"></script>

JS file:

function InitMyScript(mode){
   //other code here
}