繁体   English   中英

jQuery-将元素的坐标传递到ASP.NET代码后面?

[英]JQuery - Pass coordinates of element to ASP.NET code behind?

我正在尝试创建一个简单的ASP.NET网站,该网站将使用JQuery提供的offsetposition函数通过按钮的OnClick方法将<div>元素的坐标传递给ASP.NET代码。

我已经搜索并找到了此示例,但按一下似乎没有按预期工作,单击后没有返回坐标。

如何获取给定<div>元素的坐标,并将其传递给ASP.NET按钮的OnClick方法?

第1部分
要获取元素的位置,可以使用offset()position()

小提琴: http//jsfiddle.net/XFfLP/

function test() {
    var p = $("#testID");
    var position = p.offset();//p.position()
    $("#Field1").val(position.top);
    $("#Field2").val(position.left);
}​


第2部分
要将数据从页面传递到背后的服务器代码,可以使用Web-Methods

文章: http : //blog.nitinsawant.com/2011/09/draft-sending-client-side-variables-to.html

1. Web方法示例代码:

[System.Web.Services.WebMethod]
 public static string AcceptData(object jsonData)
 {
     Customer newCust =(Customer)JsonConvert.DeserializeObject(jsonData.ToString(),typeof(Customer));
     return "Server response: Hello "+newCust.FirstName;
 }

2. JS示例代码:

var newCustomer = {
    "FirstName": $("#txtFirstName").val(),
    "LastName": $("#txtLastName").val(),
    "Telephone": $("#txtTelephone").val()
}

var jsonData = "{'jsonData':'" + JSON.stringify(newCustomer) + "'}";//create string representation of the js object

        //post data to server
        $.ajax({
            type: "POST",
            url: 'Test.aspx/AcceptData',
            data: jsonData,
            contentType: "application/json; charset=utf-8",
            dataType: ($.browser.msie) ? "text" : "json",
            success: function(msg) {
                //call successfull
                var obj = msg.parseJSON();
                alert(obj.d); //d is data returned from web services

                //The result is wrapped inside .d object as its prevents direct execution of string as a script
            },
            error: function(xhr, status, error) {
                //error occurred
                alert(xhr.responseText);
            }
        });

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM