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直接拿来用, ...
随机推荐
- 设计模式 --> MVC,MVP 和 MVVM 的图示
MVC,MVP 和 MVVM 的图示 复杂的软件必须有清晰合理的架构,否则无法开发和维护.MVC(Model-View-Controller)是最常见的软件架构之一,业界有着广泛应用. 一.MVC M ...
- MyBatis-plus 代码生成器
1.添加pom文件依赖 <!-- Mybatis-Plus 自动生成实体类--> <dependency> <groupId>com.baomidou</gr ...
- iOS App 启动性能优化
1. App启动过程 解析Info.plist 加载相关信息,例如如闪屏 沙箱建立.权限检查 Mach-O加载 如果是胖二进制文件,寻找合适当前CPU类别的部分 加载所有依赖的Mach-O文件(递归调 ...
- 一周总结:AutoEncoder、Inception 、模型搭建及下周计划
一周总结:AutoEncoder.Inception .模型搭建及下周计划 1.AutoEncoder: AutoEncoder: 自动编码器就是一种尽可能复现输入信号的神经网络:自动编码器必须捕 ...
- 如何修改HTML5 input placeholder 颜色
有三种实现方式:伪元素(pseudo-elements).伪类( pseudo-classes)和Notihing. WebKit和Blink(Safari,Google Chrome, Opera1 ...
- 网络1712--c语言函数作业总结
作业亮点 1.总体情况 很多同学在思路方面大部分写的都很详细,能够通过思路回顾自己的代码 大部分同学都认真完成PTA,也充分利用了函数来解题 大部分同学能够从上机考试中总结自己的失误和不足点,制订了自 ...
- C语言博客作业--嵌套循环
一.PTA实验作业 题目1:7-4 换硬币 2 .设计思路 第一步:定义3个整型变量i,j,k用于循环,定义3个整型变量x,count,total分别用于储存零钱数额,换法个数,硬币数量: 第二步:输 ...
- Python randrange() 函数
Python randrange() 函数 Python 数字 描述 randrange() 方法返回指定递增基数集合中的一个随机数,基数缺省值为1. 语法 以下是 randrange() 方法的语 ...
- 自主学习之RxSwift(二) -----flatMap
最近项目中有这么一个需求,下面是三个网络请求 A.从服务器获取到时间戳(GET 方法,获取 timeLine) B.进行用户头像上传,获得回传的URL(POST方法,参数为 userId, timeL ...
- 读取.properties的内容1
属性文件方便于项目进行更改,在项目开发中用的也是非常的普遍,在这里就把属性文件的读取通过代码进行一个小结: package com.oyy.test; import java.io.BufferedI ...