使用带有传递参数的jquery重定向到asp.net中的页面

时间:2014-10-24 18:39:19

标签: javascript c# jquery asp.net

如何通过传递参数在jquery脚本中调用C#方法? 我有一个带有图标的jquery手风琴,在代码后面动态实现,一旦用户点击它应该重定向到某个页面的图标,并在url中传递参数。手风琴中的数据将从数据库填充,我想要做的是,例如,当我点击编辑图标时,它会重定向到具有该特定记录的ID的编辑页面。

这就是我的jQuery手风琴的样子:

screenshot

手风琴代码:

<div id="accordion">
    <h3>Section 1 <span class="ui-icon ui-icon-lightbulb"></span></h3>
<div>
<p>
Mauris mauris ante, blandit et, ultrices a, suscipit eget, quam. Integer
ut neque. Vivamus nisi metus, molestie vel, gravida in, condimentum sit
amet, nunc. Nam a nibh. Donec suscipit eros. Nam mi. Proin viverra leo ut
odio. Curabitur malesuada. Vestibulum a velit eu ante scelerisque vulputate.
</p>
</div>

点击jquery手风琴中的图标时的代码示例:

$('span.ui-icon-lightbulb').click(function(e) {
    alert('Lightbulb');
    e.preventDefault();
    e.stopPropagation();
});

它类似于以下href功能

<a href='EditRecord.aspx?recordID=" + record.ID + "'>Edit record</a>

但是如何通过从asp.net c#代码后面传递记录id来在jquery中执行它?

2 个答案:

答案 0 :(得分:0)

过去我使用C#和静态[Web方法]与jQuery / Ajax一起取得了成功。根据我的记忆,该方法必须声明为public static [WebMethod]。

例如:

 [WebMethod]
 public static FooObj GetFooObj ()
 {
     // some code that returns FooObj 
 }

这个帖子可能很有用。

ASP.NET calling non-static webmethod from JS AJAX

答案 1 :(得分:0)

我找到了另一个简单的方法,无论如何,谢谢你们。

我发布它以防万一有人需要它,所以这里是: 首先,我将代码后面的span标签的ID设置为记录的ID。 然后,我使用e.target.id来获取span元素的id,在上一步中我将其设置为记录的ID。最后,我使用var url = "EditRecord.aspx?recordID=" + e.target.id; $(location).attr('href', url);重定向到了修改页面。

  <script>
            $(function () {
                $("#accordion").accordion();
                $('span.ui-icon-pencil').click(function (e) {
                    e.preventDefault();
                    e.stopPropagation();
                    var url = "EditRecord.aspx?recordID=" + e.target.id;
                    $(location).attr('href', url);

                });
            });

   </script>