通过jQuery / AJAX从CS Helper文件返回生成的标记

时间:2012-07-12 20:50:36

标签: c# jquery .net razor webmatrix

我在Helper文件中生成了一些标记(位于root \ App_Code \ myHelper.cs目录中):

@helper GenerateMarkup(int id)
{
   <div class="dude">
      <a href="awesome.cshtml">Wow</a>
   </div>
}

并且,在我的结果页面中,我有一个应该去的地方。它应该进入Container div

<div class="ContainerDIV">

</div>

我做了一个小jQuery尝试向Helper文件中的int方法发送一个ID(GenerateMarkup(int id)),该方法应该将生成的标记返回给jQuery函数,而jQuery函数依次,应该在ContainerDIV内显示生成的标记,如上所述。

这是我的jQuery内容(位于ContainerDIV的div中(请原谅我的jQuery的sucky-ness,我对它很新):

    <div id="ContainerDIV" class="Bordered">
        <script>
                $('.MoreInformationOnPosition').click(function () {
                    var elID = $(this).attr('id');

                    $.ajax({
                        type: "POST",
                        url: "JTS.cs/GenerateMarkup",
                        data: elID,
                        contentType: "application/html",
                        dataType: "html",
                        success: function (msg) {
                            // Replace the div's content with the page method's return.
                            $("#ContainerDIV").attr(msg.d);
                        }
                    });
                });
        </script>
    </div>

它只是不起作用。我已经尝试使用Visual Studio 2012的PageInspecter,但找不到任何“问题”,但我知道我做错了什么。我相信这是一个非常独特的情况,这可以解释为什么我没有在网上找到任何关于此的内容。

我怎样才能做到这一点?我很感激任何帮助。

1 个答案:

答案 0 :(得分:1)

您是否从帮助者那里得到了结果?如果是,请尝试这样做: $( “#ContainerDIV”)HTML(msg.d);