У меня странная проблема, которая, вероятно, проста, вот код
js файл
function visitorAction(firstnm,lastnm)
{
var xmlhttp;
xmlhttp=new XMLHttpRequest();
xmlhttp.onreadystatechange=function()
{
if(xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById('placeholder').innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET", "Handler1.ashx?firstname="+firstnm+"&lastname="+lastnm, true);
xmlhttp.send();
}
Моя веб-форма - да, файл js правильно называется
<form id="form1" runat="server">
<div>
<table>
<tbody>
<tr>
<td>First Name</td>
<td><asp:TextBox ID="firstnameTextBox" runat="server"></asp:TextBox></td>
<td><asp:RequiredFieldValidator
ID="RequiredFieldValidator1"
runat="server"
ErrorMessage="Fill in your first name"
ControlToValidate="firstnameTextBox"></asp:RequiredFieldValidator></td>
</tr>
<tr>
<td>Last Name</td>
<td><asp:TextBox ID="lastnameTextBox" runat="server"></asp:TextBox></td>
<td><asp:RequiredFieldValidator
ID="RequiredFieldValidator2"
runat="server"
ErrorMessage="Fill in your last name"
ControlToValidate="lastnameTextBox"></asp:RequiredFieldValidator></td>
</tr>
</tbody>
</table>
<asp:LinkButton ID="LinkButton1" runat="server" OnClientClick="return visitorAction('firstnameTextBox','lastnameTextBox');">Login</asp:LinkButton>
<asp:LinkButton ID="LinkButton2" runat="server" PostBackUrl="Registration.aspx">Register</asp:LinkButton>
</div>
<div id = "placeholder">
</div>
мой обработчик
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
namespace CSC515_Project5_GREGORY
{
public class Handler1 : IHttpHandler
{
public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "text/html";
context.Response.Write("<html>");
context.Response.Output.WriteLine("hello");
context.Response.Write("</html>");
}
public bool IsReusable
{
get
{
return false;
}
}
}
}
Моя проблема в том, что эта функция не работает, когда я что-то заполняю в своих полях ввода и нажимаю «Войти» Он должен просто вернуть «привет» для тестирования, но ничего не происходит и не возникает никаких ошибок консоли. Когда я нажимаю «Войти» без заполнения какого-либо поля, он делает то, что должен. что дает?