0
 <%@ Page Title="About" Language="C#" MasterPageFile="~/Site.Master" AutoEventWireup="true" CodeFile="About.aspx.cs" Inherits="About" %>

<asp:Content runat="server" ID="BodyContent" ContentPlaceHolderID="MainContent">
    <script type="text/javascript" src="http://maps.googleapis.com/maps/api/js?sensor=false"></script>
    <script type="text/javascript">
    var directionsDisplay;
    var directionsService = new google.maps.DirectionsService();


    function getParameterByName(name) {
        name = name.replace(/[\[]/, "\\\[").replace(/[\]]/, "\\\]");
        var regexS = "[\\?&]" + name + "=([^&#]*)";
        var regex = new RegExp(regexS);
        var results = regex.exec(window.location.search);
        if (results == null)
            return "";
        else
            return decodeURIComponent(results[1].replace(/\+/g, " "));
    }


    function calcRoute() {

        start = document.getElementById('startvalue').value;

        end = document.getElementById('endvalue').value;

        var request = {
            origin: start,
            destination: end,
            travelMode: google.maps.DirectionsTravelMode.DRIVING
        };

        directionsService.route(request, function (response, status) {
            if (status == google.maps.DirectionsStatus.OK) {


                directionsDisplay.setDirections(response);
                this.distance = response.routes[0].legs[0].distance.value / 1000;

            }
        });

    }



    function Button1_onclick() {
        calcRoute();
    }

    window.onload = InitializeMap;
    </script>


    <div style="height: 86px; width: 689px; margin-left: 16px; margin-top: 0px">

        <table style="width: 96%;">
            <tr>
                <td class="auto-style1">
                    <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
                </td>
                <td>
                    <asp:TextBox  runat="server" id ="startvalue"></asp:TextBox>
                </td>
                <td>&nbsp;</td>
            </tr>
            <tr>
                <td class="auto-style2">
                    <asp:Label ID="Label2" runat="server" Text="Label"></asp:Label>
                </td>
                <td class="auto-style3">
                    <asp:TextBox runat="server" id ="endvalue"></asp:TextBox>
                </td>
                <td class="auto-style3"></td>
            </tr>
            <tr>
                <td class="auto-style1">&nbsp;</td>

                <td>                 
                       <input id="Button1" type="button" value="GetDirections" onclick="return Button1_onclick()" />

            </tr>

        </table>

我想调用 Button1_onclick() 函数,但它不起作用。这段代码没有问题。问题是调用函数是错误的。所以拜托,你能告诉我我该怎么做吗..

4

4 回答 4

0

您是否尝试过从函数调用中删除返回?此代码触发事件。

<asp:Content ID="ContentMain" ContentPlaceHolderID="ContentBody" runat="server">    
    <script type="text/javascript" language="javascript">
        function Button1_Click() {
            alert('foo');
        }
    </script>
<input type="button" id="Button1" onclick="Button1_Click()" value="GetDirections" />

于 2013-04-01T19:16:06.820 回答
0

这可能是因为您的 HTML 标记无效

            <tr>
                <td class="auto-style1">&nbsp;</td>

                <td>                 
                       <input id="Button1" type="button" value="GetDirections" onclick="return Button1_onclick()" />

</td> <!-- Missing closing tag -->

            </tr>
于 2013-04-01T17:47:49.527 回答
0

试试这个代码onclick="return javascript:calcRoute()而不是 OnClick="return Button1_onclick"

并检查此脚本文件(**<script type="text/javascript" src="../../Scripts/jquery-ui-1.9.2.min.js"></script>**)(任何最小化版本)是否在您的母版页中引用?

              <tr>
                <td class="auto-style1">&nbsp;</td>

                <td>                 
                   <input id="Button1" type="button" value="GetDirections" *onclick="return javascript:calcRoute();"** />
               </td>    
            </tr>

编辑:

试试这个另一种方式

$("#filter").click(function(){
   Button1_onclick();
});

<input id="Button1" type="button" value="GetDirections" />
于 2013-04-01T17:57:14.827 回答
0

你为什么不直接调用函数呢?

<input id="Button1" type="button" value="GetDirections" onclick="Button1_onclick()" />

否则,在 Button1_onclick 中应该返回一个值。

function Button1_onclick() {
        calcRoute();
        return true;
}
于 2013-04-01T21:53:23.220 回答