2016-04-25 39 views
0

我尝试从我的asp页面调用javascript函数,但是调用不会执行任何操作。 这是我的代码:javascript ajax函数不会通过从html页面调用加载asp.net

<%@ Page Title="" Language="C#" MasterPageFile="~/MasterPage.master" 
    AutoEventWireup="true" CodeFile="addAdmin.aspx.cs" Inherits="addAdmin" %> 

    <asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server"> 
    <script type="text/javascript"> 
    function addAdmin() { 
     var auname = document.getElementById("uname")[0].value; 
     var apass = document.getElementById("pass")[0].value; 
     $.ajax({ 
      url: "http://localhost:53236/Handler.ashx?cmd=addAdmin&auname="+ auname + "&apass=" + apass, 
      async: true, 
      dataType: "html", 
      success: function (response) { 
       $("#status").html(" <strong>One of the fields are empty..</strong> Please fill it and try again later."); 

      } 
     }); 
    } 
</script> 
</asp:Content> 
<asp:Content ID="Content3" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server"> 
<h1>In order to add an admin for the site, fill out the form below</h1> 
<br /> <section class="status"><div id="status" ></div></section><br /> 
<br /> 
Admin Username:<input type="text" id="uname" /><br /> 
Admin Password:<input type="text" id="pass" /><br /> 
<button type="submit" onclick="javascript:addAdmin();">Submit</button><br /> 
</asp:Content> 

在处理程序中的功能运作良好,(我试过手动发送的参数,它workes罚款) 但我就是不能叫我的功能。

我尝试了很多不同势的方法来调用我的功能,如: <a href="javascript:addAdmin" >click her </a> 和使用服务器下面的代码更新面板调用,而ASP的按钮,点击 Page.ClientScript.RegisterStartupScript(this.GetType(), "CallMyFunction", "addShoe()", true);

从母版页的内容1只是在头部标签。 所以我不知道是什么问题,为什么我不能调用我的功能

回答

0

首先,请不要用button[type="submit"]来提出AJAX请求。使用提交按钮,您还需要侦听事件form并防止它的默认行为。有时它是一个有点混乱

尝试使用<a>标签,并防止它这样

<script type="text/javascript"> 
    function addAdmin(event) { 

     event.preventDefault(); 

     var auname = document.getElementById("uname")[0].value; 
     var apass = document.getElementById("pass")[0].value; 
     $.ajax({ 
      url: "http://localhost:53236/Handler.ashx?cmd=addAdmin&auname="+ auname + "&apass=" + apass, 
      async: true, 
      dataType: "html", 
      success: function (response) { 
       $("#status").html(" <strong>One of the fields are empty..</strong> Please fill it and try again later."); 

      } 
     }); 
    } 
</script> 

,并在HTML而不是<button>默认行为:

<a href="#" onclick="addAdmin(event);">Submit</a> 
相关问题