如何在mvc中传递具有2个值的查询字符串

Posted

技术标签:

【中文标题】如何在mvc中传递具有2个值的查询字符串【英文标题】:how to pass query string with 2 values in mvc 【发布时间】:2017-07-25 11:06:18 【问题描述】:

我想在单击一行时发送两个值(经度和纬度)。这样当我单击表中的一行时,它应该重定向到网页并在谷歌地图中显示标记。我如何在查询字符串中传递动态值

代码

    @model List<smartpond.Models.AssetDetailsViewModel>
    @
        ViewBag.Title = "Details";
        Layout = "~/Views/Shared/_Layout.cshtml";
    
     <div>
            <table>
            <tbody>
                            @foreach (var device in Model.Select(x => x.deviceid).Distinct().ToList())
                        
                            foreach (var item in Model.Where(x => x.deviceid == device).Select((value, i) => new  i, value ))
                            
                                    <tr class="tr_@item.value.deviceid">
                                        <td>@(item.i + 1)</td>
                                        <td>@item.value.deviceid</td>
                                        <td><a href="@Url.Action("Marker", "Tracker")">@item.value.latitude</a></td>
                                        <td><a href="@Url.Action("Marker", "Tracker")">@item.value.longitude</a></td>
                                        <td>@item.value.time</td>
                                        <td>@item.value.battery</td>
                                    </tr>
                                
                            
       </tbody>
    </table>
</div>

【问题讨论】:

试试这个。 标记 【参考方案1】:

使用javascript

$("tr").click(function() 
var tableData = $(this).children("td").map(function() 
    return $(this).text();
).get();

 var latitude= $.trim(tableData[3]); 
 var longitude= $.trim(tableData[4]));
//3 for latitude and 4 for longitude
//then use ajax to pass parameter to function
$.ajax(
type: 'POST',
url: 'myWebForm.aspx/GetLatLong',
contentType: 'application/json; charset=utf-8',
data:  lat: latitude, long: longitude ,
dataType: 'json',
success: ,
error: 
);

//会命中myWebForm.aspx中的GetLatLong方法

【讨论】:

通过这个 ajax 调用,我们可以获得单值(lat long),我在表中有一堆 lat long 值。我需要通过查询字符串(mvc)发送所有经纬度。

以上是关于如何在mvc中传递具有2个值的查询字符串的主要内容,如果未能解决你的问题,请参考以下文章

如何在Spark SQL中查询StringType的1个字段具有json值的数据框

如何从javascript发送具有2个值的表单?

SQL:将查询输出更改为具有两个单独的列,而不是具有 2 个值的行

如何求和具有特定查找字段值的记录数

SQL 查询 - 匹配 5 中至少 4 个值的条件

将一个JSP页面的若干个值传到另一个JSP页面上