2011-01-25 26 views
0

我想做一个程序来上传文件在一个页面,并希望导航到另一个页面与该文件的名称。我写这样的代码虽然写了asp.net代码,它显示错误

<%@ Page Title="Home Page" Language="VB" %> 
<html> 
<head> 
    <style type="text/css"> 
     .style1 
     { 
      width: 100%; 
     } 
     .style3 
     { 
      width: 185px; 
     } 
     .style4 
     { 
      width: 129px; 
     } 
    </style> 
    <script language="javascript"> 
     function doc_save() { 
      document.forms[0].submit; 
      action = "mynew_page.aspx"; 
     } 
     doc_save(); 
    </script> 
    <script language ="vbscript " runat ="server" > 
     Public Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 
      Call save_click() 
     End Sub 

     Public Sub save_click() 
      Response.Write("Saving...") 
     End Sub 
     </script> 
</head> 
<body> 
<form id="form1" runat="server"> 
<table class="style1"> 
    <tr> 
     <td class="style4"> 
      <asp:Button ID="back" runat="server" Text="Back" /> 
     </td> 
     <td class="style3"> 
      <asp:Button ID="save" runat="server" Text="Save" onClick="doc_save()" /> 
     </td> 
    </tr> 
    <tr> 
     <td class="style4"> 
      <asp:Label ID="Label1" runat="server" Text="File Name"></asp:Label> 
     </td> 
     <td class="style3"> 
      <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox> 
     </td> 
    </tr> 
    <tr> 
     <td class="style4"> 
      <asp:Label ID="Label2" runat="server" Text="Description"></asp:Label> 
     </td> 
     <td class="style3"> 
      <textarea id="txtarea" name="txtarea" runat ="server" ></textarea></td> 
    </tr> 
    <tr> 
     <td class="style4"> 
      <asp:Label ID="Label3" runat="server" Text="File Upload"></asp:Label> 
     </td> 
     <td class="style3"> 
      <asp:FileUpload ID="FileUpload1" runat="server" Width="330px" /> 
     </td> 
    </tr> 
</table> 
</form> 
</body> 
</html> 

当我运行该程序它显示像下面的错误。 当然这个代码还没有完成,请你帮忙完成这个。 enter image description here

回答

1

错误的原因是您要在服务器端元素(asp:按钮)上放置“onclick”属性。在这种情况下,onclick指的是点击按钮时服务器端采取的动作。但是因为你命名的函数在服务器代码中不存在,所以它失败了。

鉴于你有一个JavaScript函数,我认为这是你想要调用。在这种情况下,您应该使用onClientClick属性。 http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.button.onclientclick.aspx有这方面的信息和周围阅读,应该让你更好地了解这个问题。

0

错误消息说你没有“doc_save()”在你的aspx页面的代码定义。您必须将**<asp:button>**转换为html **<input>**控件,然后删除标签“runat = server”或使用OnClientClick关于当前控件,如其他答案中给出的。

+0

删除`runat =“server”`将无济于事,因为它是'`。你可以将它转换为一个标准的html按钮(即`

0

Button应该调用javascript函数吗?如果是这样,您需要设置onClientClick