C#使用jsonp进行跨域提交表单
来源:互联网 发布:电路磁场仿真软件 编辑:程序博客网 时间:2024/06/05 06:04
跨域提交留言,并返回是否成功!
C#服务端:
public void FeedBackPost(string name, string email, string tel, string website, string desc, string thisIp, string sourse, string callBack) { try { Response.ContentType = "application/x-javascript"; string str = callBack; if (thisIp==null) { thisIp = "未取到IP"; } string strSql = ""; HSBY_DBEntities db = new HSBY_DBEntities(); //验证ip短时间内是否提交太多 Regex rx = new Regex(@"((?:(?:25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))\.){3}(?:25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d))))"); if (rx.IsMatch(thisIp)) { strSql = @"select count(*) from fb_srv_main where ip='" + thisIp + "'"; int ipCount = db.ExecuteStoreQuery<int>(strSql).FirstOrDefault(); if (ipCount>10) { str += "([{\"请勿重复提交!\"}]);"; Response.Write(str); return; } } fb_srv_main newItem = new fb_srv_main(); newItem.name = name; newItem.email = email; newItem.tel = tel; newItem.site = website; newItem.content_str = desc; newItem.ip = thisIp; newItem.creat_by = sourse; newItem.creat_on = DateTime.Now; _mainBLL.Create(ref validationErrors, newItem); //HttpContext context = new HttpContext(); if (validationErrors.Count>0) { str+=validationErrors[0].ErrorMessage; Response.Write(str); return; } FeedBackEmail( name, email, tel, website, desc, thisIp, sourse); str += "([{\"Rusltstr\":\"OK\"}]);"; Response.Write(str); return; } catch (Exception ex) { Response.ContentType = "application/x-javascript"; Response.Write(callBack + "([{\"Rusltstr\":\"出错了!\"}]);"); return; } }
JS客户端:
//提交留言返回数据处理function displayResult(data) { var iRusltstr=data[0].Rusltstr; if(iRusltstr=="OK"){ //关闭遮罩$("#submitmask").fadeOut(500);alert("提交成功!"); }else{ $("#submitmask").fadeOut(500);alert(iRusltstr+" 请使用其他方式联系我们!"); } }
//提交留言function SubmitMsg(){var AllInput=$("#formwrap input");var iTextarea=$("#formwrap textarea");//获得焦点样式AllInput.focus(function(){AddFocusStyle($(this))});AllInput.blur(function(){AddFocusStyle($(this))});iTextarea.focus(function(){AddFocusStyle($(this))});iTextarea.blur(function(){AddFocusStyle($(this))});function AddFocusStyle(iInput){if(iInput.attr("style")=="" || iInput.attr("style")==null){iInput.attr("style","border:1px solid #bcbcbc;color:#7a7a7a;");}else{iInput.attr("style","");}}//丢失焦点验证AllInput.blur(function(){FormValiudat($(this));});//表单验证方法function FormValiudat($input){var promptStr="";var pattern = new RegExp("[~'!#$%^&*()-+_=]");if(pattern.test($input.val())){alert("非法字符!亲,请勿尝试注入哦!");return false;}switch($input.attr("id")){case "name": //姓if($input.val().length>10){$("#redpoint_name").removeClass("hide");$input.focus();return false;}else{$("#redpoint_name").addClass("hide");} break;case "email": //emailvar reg = /^[a-z0-9]+([._\\-]*[a-z0-9])*@([a-z0-9]+[-a-z0-9]*[a-z0-9]+.){1,63}[a-z0-9]+$/;if (!reg.test($input.val())) { $("#redpoint_email").removeClass("hide");$input.focus();return false;}else{$("#redpoint_email").addClass("hide");} break; case "tel"://电话var isMobile=/^(?:13\d|15\d|18\d)\d{5}(\d{3}|\*{3})$/; var isPhone=/^((0\d{2,3})-)?(\d{7,8})(-(\d{3,}))?$/;if(!isMobile.test($input.val()) && !isPhone.test($input.val())){$("#redpoint_tel").removeClass("hide");$input.focus();return false;}else{$("#redpoint_tel").addClass("hide");} break; case "website": if(!(/[^\d]/g).test($input.val())){$("#redpoint_website").removeClass("hide");$input.focus();return false;}else{$("#redpoint_website").addClass("hide");} break; case "desc": var mainText=$input.val(); if(mainText.length>=100){alert("最多100个字!");return false;} break;}return true;}//表单提交$("#formsubmit").click(function(){var $feedback_input=$("#formleft input");for(var i=0;i<$feedback_input.length;i++){var $thisInput=$($feedback_input[i]);if(!FormValiudat($thisInput)){return;};}//提交表单前打开遮罩$("#submitmask").fadeIn(500); var url = "http://www.XXXX.cn:8888/MainAjax/FeedBackPost" url = "http://www.<span style="font-family: Arial, Helvetica, sans-serif;">XXXX</span><span style="font-family: Arial, Helvetica, sans-serif;">.cn:8888/MainAjax/FeedBackPost?name="+$("#name").val()+"&email="+$("#email").val()+"&tel="+$("#tel").val()+"&website="+$("#website").val()+"&desc="+$("#desc").val()+"&thisIp="+$("#keleyivisitorip").html()+"&callback=displayResult" </span> $.getScript(url); })}
0 0
- C#使用jsonp进行跨域提交表单
- JSONP跨域提交表单
- JSONP跨域提交表单
- Jquery Jsonp跨域提交表单获取返回数据
- jquery Ajax 通过jsonp的方式跨域提交表单
- jquery使用jsonp进行跨域调用
- jquery使用jsonp进行跨域调用
- 使用JsonP进行跨域请求
- jquery使用jsonp进行跨域调用
- 使用Jmeter进行提交表单的操作
- 通过iframe进行post跨域提交表单
- 使用表单onsubmit属性进行表单提交前js判定
- 使用JSONP进行跨域的数据传递
- JSONP解决跨域提交数据(jquery jsonp Ajax)
- JSONP解决跨域提交数据(jquery jsonp Ajax)
- python进行表单提交
- Ajax跨域提交JSON和JSONP
- 表单跨域提交
- 面向对象程序设计上机练习三(有默认参数的函数)
- hdu 1827 强连通分量+判断入度
- HDU 4286 Data Handler(伸展树)
- C#调用易语言写的Dll文件
- cocos2d-x学习笔记————HelloWorld
- C#使用jsonp进行跨域提交表单
- 50个创意进度条优秀设计(附PSD下载)
- 面向对象程序设计上机练习二(函数模板)
- oracle 索引介绍
- Weka 学习之调用Weka 分类算法
- 传递复杂数据类型的远程Service
- hdu-1045 Fire Net
- 50套高品质UI组件包下载
- java native初步认识