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直接拿来用, ...
随机推荐
- Hibernate 介绍及其 环境搭建
介绍 数据持久化概念 数据持久化是将内存中的数据模型转换为存储模型,以及将存储模型转换为内存中的数据模型的统称.例如:文件的存储.数据的读取等都是数据持久化操作.数据模型可以是任何数据结构或对象模型, ...
- 【Darwin】 越狱后玩耍IPhone系统
玩耍IOS系统 大家都知道IOS是自Mac OS修改而来的.而Mac OS和IOS的共同核心是Darwin,其基于FreeBSD发展而来,整体而言也是个类Unix系统.之前把自己的手机越狱之后正好开始 ...
- 【Python】 垃圾回收机制和gc模块
垃圾回收机制和gc模块 Py的一个大好处,就是灵活的变量声明和动态变量类型.虽然这使得学习py起来非常方便快捷,但是同时也带来了py在性能上的一些不足.其中相关内存比较主要的一点就是py不会对已经销毁 ...
- java数据结构与算法之栈(Stack)设计与实现
本篇是java数据结构与算法的第4篇,从本篇开始我们将来了解栈的设计与实现,以下是本篇的相关知识点: 栈的抽象数据类型 顺序栈的设计与实现 链式栈的设计与实现 栈的应用 栈的抽象数据类型 栈是一种用于 ...
- Ubuntu安装Anaconda
安装Anaconda的最简单方法是下载最新的Anaconda安装程序bash脚本,然后运行它. 在Anaconda Downloads页面找到最新版本的Anaconda for Python 3 .当 ...
- 笔试常考--浏览器输入一个URL点击回车之后发生了什么
解析URL:浏览器首先对拿到的URL进行识别,抽取出域名字段. DNS解析: 查询浏览器缓存(浏览器会缓存之前拿到的DNS 2-30分钟时间),如果没有找到, 检查系统缓存,检查hosts文件,这个文 ...
- Python并发编程之进程
一.理论概念 1.定义 进程(Process 也可以称为重量级进程)是程序的一次执行.在每个进程中都有自己的地址空间.内存.数据栈以及记录运行的辅助数据,它是系统进行资源分配和调度的一个独立单位. 2 ...
- Python变量赋值的秘密
在Python中,我们令一个变量等于另外一个变量时,并不是把值传递给它,而是直接把指向的地址更改了.我们想要查看一个变量在内存中的地址,可以通过id(变量) 来查看.我们通过一个小例子来看看这个有趣的 ...
- 项目Alpha冲刺Day8
一.会议照片 二.项目进展 1.今日安排 前端界面框架基本完成,剩下侧边栏与权限相关部分未完成.前端路由异常拦截完成.项目结构与开发流程规定完成.后台开发规定小变更. 2.问题困难 组件的拆分与否和组 ...
- 网上找的hadoop面试题目及答案
1.Hadoop集群可以运行的3个模式? 单机(本地)模式 伪分布式模式全分布式模式2. 单机(本地)模式中的注意点? 在单机模式(standalone)中不会存在守护进程,所有东西都运行在一个JVM ...