views:

33

answers:

2

For example, I want to show a jQuery dialog after insert or edit a record in Action, in webform I can use the follow way to register js script to the page:

page.RegisterStartupScript(key, "<script language='javascript' defer>" + script + "</script>");

but this doesn't work in MVC, so how can I do this?

thanks!

+1  A: 

In ASP.NET MVC scripts are not registered in controller actions. There's a separation between controllers and views. So you could directly put the script in the corresponding view:

<script type="text/javascript" src="somescript.js"></script>

When the view is rendered it will load the script. Now if you are doing AJAX and you want to add a script inside the success callback you could create the script element and append it to the DOM:

var script = document.createElement('script');
script.type = 'text/javascript';
script.src = 'somescript.js';
$('#someElement').append(script);
Darin Dimitrov
Your means I just write the js script to the view page? but how can I call this js function from the action? for example in my view page, I just need to call a jQuery dialog :<script type="text/javascript">$(function() { $("#dialog").dialog("destroy"); }); </script>
A: 

Your means I just write the js script to the view page? but how can I call this js function from the action? for example in my view page, I just need to call a jQuery dialog :

<script type="text/javascript">
$(function() {      
    $("#dialog").dialog("destroy");         
});
 </script>