2016-04-25 79 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> 
相關問題