jquery ajax 发送邮件例子
<div class="form">
<dl>
<dt>您的称呼<small>(必填)</small></dt>
<dd><input id="name" type="text" name="name" class="formText" require></dd>
</dl>
<dl>
<dt>您的邮箱<small>(必填)</small></dt>
<dd><input id="email" type="text" name="email" class="formText" require></dd>
</dl>
<dl>
<dt>联系电话</dt>
<dd><input id="phone" type="text" name="phone" class="formText"></dd>
</dl>
<dl>
<dt>您的想法/意见<small>(必填)</small></dt>
<dd><textarea id="message" name="message" class="formText"></textarea></dd>
</dl>
<div class="formBtn" onclick="btnSend()">发送留言</div>
<script>
//提交数据
function btnSend() {
$("#txtMsg").text("");
var name = $("#name").val();//您的称呼
var email = $("#email").val();//您的邮箱
var phone = $("#phone").val();//联系电话
var message = $("#message").val();//您的想法 if (name.length == ) {
alert("称呼不能为空!");
return;
}
if (email.length == ) {
alert("邮箱不能为空!");
return;
} var myreg = /^([a-zA-Z0-]+[_|\_|\.]?)*[a-zA-Z0-]+@([a-zA-Z0-]+[_|\_|\.]?)*[a-zA-Z0-]+\.[a-zA-Z]{,}$/;
if (!myreg.test(email)) {
alert('请输入有效的E_mail!');
return;
} if (message.length < ) {
alert("意见不能不能少于20个字符!");
return;
}
$(".formBtn").val("正在发送,请稍等!"); var postData = "name=" + name + "&email=" + email + "&phone=" + phone + "&message=" + message; //向后台发送处理数据
$.ajax({
type: "POST", //用POST方式传输
dataType: "text", //数据格式:JSON
url: '/Email.ashx', //目标地址
data: postData,
error: function (XMLHttpRequest, textStatus, errorThrown) {
alert("发送失败,请联系在线客服!");
},
success: function (msg) {
$(".formBtn").val("发送留言");
alert(msg);
}
});
} </script>
</div>
Email.ashx
<%@ WebHandler Language="C#" Class="Email" %> using System;
using System.Web;
using Ky.Common; public class Email : IHttpHandler
{ public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "text/plain"; string name = KYRequest.GetFormString("name");//您的称呼
string email = KYRequest.GetFormString("email");//您的邮箱
string phone = KYRequest.GetFormString("phone");//联系电话
string message = KYRequest.GetFormString("message");//您的想法 if (string.IsNullOrEmpty(name))
{
context.Response.Write("您的称呼为空");
return;
}
if (string.IsNullOrEmpty(email))
{
context.Response.Write("您的邮箱为空");
return;
}
if (string.IsNullOrEmpty(message))
{
context.Response.Write("想法/意见为空");
return;
}
string body = "时间:" + DateTime.Now + "<br>IP:" + KYRequest.GetIP() + "<br>称呼:" + name + "<br>邮箱:" + email + "<br>电话:" + phone + "<br>想法/意见:" + message; try
{
string wwwEmail = System.Configuration.ConfigurationManager.AppSettings["wwwEmail"].ToString();
SendMail.Send(wwwEmail, "【邮件助手】您的网站收到留言" + DateTime.Now, body);
context.Response.Write("发送成功,感谢您的支持。");
}
catch
{
context.Response.Write("Web.config未设置接收邮箱,发送失败");
}
} public bool IsReusable
{
get
{
return false;
}
} }
jquery ajax 发送邮件例子的更多相关文章
- jquery ajax POST 例子详解
function test(){ $.ajax({ //提交数据的类型 POST GET type:"POST", //提交的网址 url:"testLogin.aspx ...
- Jquery.ajax 详细解释 通过Http请求加载远程数据
首先请看一个Jquery.ajax的例子 $.ajax({ type: "GET", url: "/api/SearchApi/GetResults", dat ...
- php+jquery+ajax+json简单小例子
直接贴代码: <html> <title>php+jquery+ajax+json简单小例子</title> <?php header("Conte ...
- jquery ajax跨域请求后台的简单例子
一.简介AJAX 是与服务器交换数据的技术,它在不重载全部页面的情况下,实现了对部分网页的更新. ajax() 方法通过 HTTP 请求加载远程数据. 该方法是 jQuery 底层 AJAX 实现.简 ...
- WCF入门教程(四)通过Host代码方式来承载服务 一个WCF使用TCP协议进行通协的例子 jquery ajax调用WCF,采用System.ServiceModel.WebHttpBinding System.ServiceModel.WSHttpBinding协议 学习WCF笔记之二 无废话WCF入门教程一[什么是WCF]
WCF入门教程(四)通过Host代码方式来承载服务 Posted on 2014-05-15 13:03 停留的风 阅读(7681) 评论(0) 编辑 收藏 WCF入门教程(四)通过Host代码方式来 ...
- Django1.7+JQuery+Ajax集成小例子
Ajax的出现让Web展现了更新的活力,基本所有的语言,都动态支持Ajax与起服务端进行通信,并在页面实现无刷新动态交互. 下面是散仙使用Django+Jquery+Ajax的方式来模拟实现了一个验证 ...
- jQuery Ajax 方法调用 Asp.Net WebService 以及调用aspx.cs中方法的详细例子
一.jQuery Ajax 方法调用 Asp.Net WebService (引自Terry Feng) Html文件 <!DOCTYPE html PUBLIC "-//W3C//D ...
- jquery ajax请求后台 的简单例子
jQuery.ajax(url,[settings]) 概述 通过 HTTP 请求加载远程数据. jQuery 底层 AJAX 实现.简单易用的高层实现见 $.get, $.post 等.$.ajax ...
- JQuery+Ajax+Struts2+Hibernate 实现完整的登录注册
写在最前: 下午有招聘会,不想去,总觉得没有准备好,而且都是一些不对口的公司,可是又静不下心来,就来写个博客. 最近在仿造一个书城的网站:http://www.yousuu.com ,UI直接拿来用, ...
随机推荐
- [poj1185]炮兵阵地_状压dp
炮兵阵地 poj-1185 题目大意:给出n列m行,在其中添加炮兵,问最多能加的炮兵数. 注释:n<=100,m<=10.然后只能在平原的地方建立炮兵. 想法:第2到状压dp,++.这题显 ...
- web服务器学习3---httpd 2.4.29日志处理
.rotarelogs分割工具 如果有虚拟主机在虚拟主机配置文件中配置,否则在主配置文件中修改. 1.1修改配置文件 vi /usr/local/httpd/conf/conf.d/vhosts.co ...
- 和sin有关的代码
include include using namespace std; const double TINY_VALUE=1e-10; double tsin(double x) { double g ...
- pjax实例demo(c#,iis)
pjax 百度都是api 也没找到demo 自己写了一个 C#写的 需要iis架设 测试ie10 和 火狐 成功 ie10不要用兼容模式 不然不好使 iis 可以直接架设webDemo1文件夹(源码) ...
- Alpha冲刺Day6
Alpha冲刺Day6 一:站立式会议 今日安排: 由张梨贤继续完成前一天委托第三方剩余的内容,并完成委托情况查看这一子模块 由黄腾飞继续完成前一天企业自查风险管理剩余的内容,并完成风险上报这一子模块 ...
- 关于Java的异常
异常机制概述 异常机制是指当程序出现错误后,程序如何处理.具体来说,异常机制提供了程序退出的安全通道.当出现错误后,程序执行的流程发生改变,程序的控制权转移到异常处理器. 异常处理的流程 当程序中抛出 ...
- ASCII排序
ASCII码排序 时间限制:3000 ms | 内存限制:65535 KB 难度:2 描述 输入三个字符(可以重复)后,按各字符的ASCII码从小到大的顺序输出这三个字符. 输入 第一行输 ...
- [JCIP笔记] (二)当我们谈线程安全时,我们在谈论什么
总听组里几个大神说起线程安全问题.本来对"线程安全"这个定义拿捏得就不是很准,更令人困惑的是,大神们用这个词指代的对象不仅抽象而且千变万化.比如,我们的架构师昨天说: " ...
- idea找不到package下的mapper.xml文件
由于开发人员使用不同的开发工具,导致eclipse的开发人员将mapper.xml文件习惯性的放到package下,以便查看,而eclipse编译时,不会忽略package下的xml以及dtl文件,所 ...
- java获取本类路径
(1).Test.class.getResource("") 得到的是当前类FileTest.class文件的URI目录.不包括自己! (2).Test.class.getReso ...