5

I've got a question regarding ASP.Net MVC.

I'm using an Ajax.ActionLink to load a PartialView.

In this partial view is a javascript function I'd like to get called.

However I can't figure out how to make this happen.

I've tried using AjaxOptions { OnSuccess="functionInPartialView" } when I set the Ajax.ActionLink but for some reason it can't see the Javascript.

EDIT: The PartialView is a mix of JavaScript and Html

2
  • what do you mean that you can't see the javascript. It's not rendering in the page , or it is not called. Commented Dec 3, 2009 at 20:51
  • It's not being called. I've tried many different ways of trying to get it to fire. The only way that I found worked was to load the PartialView using a jquery ajax call Commented Dec 4, 2009 at 11:02

4 Answers 4

5

I would suggest to use jQuery ($.get/$.ajax). It evaluates the $(function(){}) when you load the partial, so your scripts there fire. And I personally find jQuery easier and cleaner to use.

Sign up to request clarification or add additional context in comments.

1 Comment

yup, you're right. I've ended up resorting to this and it works sweet. cheers
5

Add the javascript code in the view that will contain the parcialview, and next use the ajaxOptions { OnSuccess="functionInView" } when you set the Ajax.ActionLink.

Comments

3

If it's only javascript in your partial view, then you should be using a JavaScript Action result, as in this post

Otherwise, the issue is that ajax merely loading content into a div doesn't mean that it executes. In your ajax callback, you need to find the javascript content and eval it, so that your page is aware of the function definition.

I know that's a high level description, but I don't have any samples of doing this. If you post some of the code, maybe someone can suggest a cleaner way of doing this so that you have better access to the script.

1 Comment

unfortunately it's not only javascript. Sorry I should have made that more clear
0

You can try Multipartials , you can use them to update multiple views and even run scripts from partials, im not sure about the exact specifics as its been a while, but you can have a look at it and see if it can accomplish what you are looking for

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.