Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/32.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将参数传递给Url.Action_Javascript_Asp.net_Parameters_Google Api_Infowindow - Fatal编程技术网

Javascript 将参数传递给Url.Action

Javascript 将参数传递给Url.Action,javascript,asp.net,parameters,google-api,infowindow,Javascript,Asp.net,Parameters,Google Api,Infowindow,这是我的javascript函数: function addMarker(x, y, meas_type, meas_status, meas_key) { var location = new google.maps.LatLng(x, y); var contentString = '<h3 >' + meas_type + '</h3>' + '<p>Status: ' + '<span style=

这是我的javascript函数:

function addMarker(x, y, meas_type, meas_status, meas_key) {
            var location = new google.maps.LatLng(x, y);
            var contentString = '<h3 >' + meas_type + '</h3>' + '<p>Status: ' + '<span style="color: red">' + meas_status + '</span>' + '</p>' + '<input type="button" class="btn btn-default" value="Details" onclick="window.location.href=\'@Url.Action("Index", "Home", new { param = meas_key})\';" />' + '&nbsp;';
            var marker = new google.maps.Marker({
                position: location,
                map: map,
            });
            var infowindow = new google.maps.InfoWindow({
                        content: contentString
            });
            google.maps.event.addListener(marker, 'click', function () {
                        infowindow.open(map, marker);
                    });
        }
功能添加标记(x、y、测量类型、测量状态、测量键){
var location=new google.maps.LatLng(x,y);
var contentString=''+meas_类型+'+'状态:'+''+meas_状态+'+'

'++'; var marker=new google.maps.marker({ 位置:位置,, 地图:地图, }); var infowindow=new google.maps.infowindow({ 内容:contentString }); google.maps.event.addListener(标记,'click',函数(){ 信息窗口。打开(地图、标记); }); }
现在在contentString变量中,我想将索引方法meas_key作为参数传递给它!我怎么做?它不是这样工作的

这一个工作正常,但我需要发送meas_key作为参数:

var contentString = '<h3 >' + meas_type + '</h3>' + '<p>Status: ' + '<span style="color: red">' + meas_status + '</span>' + '</p>' + '<input type="button" class="btn btn-default" value="Details" onclick="window.location.href=\'@Url.Action("Index", "Home")\';" />' + '&nbsp;';
var contentString='+meas_类型+'+'状态:'+'+meas_状态+'+'

'+'+';
这里的问题是
@Url.Action
是在服务器端完成的,当然没有办法在服务器端传递javascript变量。因此,您可能需要执行以下操作:

var url = '@Url.Action("Index", "Home")' + '?param=' + meas_type;
var contentString =
    '<h3 >' + meas_type + '</h3>'
    + '<p>Status: ' + '<span style="color: red">' + meas_status + '</span>' + '</p>'
    + '<input type="button" class="btn btn-default" value="Details" onclick="window.location.href=' + url + '" />'
    + '&nbsp;';
var url='@url.Action(“Index”,“Home”)'+'?param='+meas_type;
var contentString=
“+表示类型+”
+状态:“+”+表示状态+“+”

” + '' + ' ';

你可能想考虑某种模板来让这个HTML结构更可读。

我认为URL后面有一个“+”缺失,但是不管怎么说,当我点击按钮时,都没有动作。@ CAJ,尝试调试URL,甚至整个代码< Cordon Studio >,或者至少把它输出到控制台或提醒他们。它们看起来对吗?contentString中的window.location.href有一个值:/Home/Index?param=9我想我们只需要用“我试过了,但没有用:var url=“\”@url.Action(“MeasDetails”,“Home”)+”?param='+meas\u key;\'“
var url=“\'@url.Action(“MeasDetails”,“Home”)”+'?param='+meas\u key+”