开发者

Refresh conent with JQuery/AJAX after using a MVC partial view

Using the following JQuery/AJAX function I'm calling a partial view when an option is changed in a combobox named "ReportedIssue" that is also in the partial view. The is named "tableContent".

<script type="text/javascript">
    $(function() {
        $('#ReportedIssue')
      .change(function() {
          var styleValue = $(this).val();
          $('#tableContent').load(
          '/CurReport/TableResults',
          { style: styleValue }
        );
      })
      .change();
    });
</script>

My problem is that after the jump to the partial view I lose the link to the javascript. I thin开发者_如何学Ck I'm supposed to use the JQuery ".live()" but I'm unsure.

In short, I want to re-establish the link between my JavaScript and my combobox and after the inclusion of the partial view's HTML.

I hope I'm being clear enough,

Aaron


This answer is deprecated, see Mike's answer


As of jQuery 1.4 you can use the live handler with the change event. Simply change your code to work with it. If you are stuck with an earlier version of jQuery, you need to reapply the handler in the AJAX callback.

$(function() { 
    $('#ReportedIssue').live('change', function() { 
      var styleValue = $(this).val(); 
      $('#tableContent').load( 
          '/CurReport/TableResults', 
           { style: styleValue } 
      ); 
    })
});


Since .live() is now deprecated. Use .on(). Or, in my success callback, I simply did a .load() $('#container').load('index.php', '#right'); Worked like a charm.


Yes you should use live():

$('#ReportedIssue').live('click', function() {
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜