Ajax中参数带有html格式的 传入后台保存【一】
因业务需求 要讲如下编辑器中带有样式的数据传入数据库保存
第一种方法 json格式传入
$(".privilegezn_page .btn_ok").click(function () {
if (editor.html() == "")
{
alert("优惠使用指南内容不能为空")
} else {
var str = HTMLEncode(editor.html());
console.log(str);
if (($("select")).length > 0) {
var hotelid = $("#hotel option:selected").attr("value");
} else {
var hotelid = $("#hotelid").val();
}
var cz = $("#xg").val();//操作名id
var gnbh = $("#gnbh").val();
var obj = new Object();
obj.text = str;
obj.xgid = hotelid;
function HTMLEncode(text){
text = text.replace(/&/g, "&") ;
text = text.replace(/</g, "'<'") ;
text = text.replace(/>/g, "'>'") ;
return text;
}
obj.gnbh = gnbh;
obj.cz = cz;
console.log(JSON.stringify(obj));
$.ajax({
type: "POST",
url: "/Business/yhsyznxg",
data:{json:JSON.stringify(obj)},
success: function (data) {
var f = $.parseJSON(data);
if (f.yz1) {
alert("添加成功!");
if ($("#yhsyzncx").length > 0) {
$("#yhsyzncx").trigger("click");
} else {
location.replace(location.href);
}
}
else if (f.yz1 == false) {
alert("添加失败!");
location.replace(location.href);
}
if (f.yz2) {
alert("修改成功!");
if ($("#yhsyzncx").length > 0) {
$("#yhsyzncx").trigger("click");
} else {
location.replace(location.href);
}
}
else if (f.yz2 == false) {
alert("修改失败!");
location.replace(location.href);
}
}
});
}
})
后台页面:
//优惠使用指南
[HttpPost]
public ActionResult yhsyznxg(string json)
{
JObject l = (JObject)JsonConvert.DeserializeObject(json);
//数据库为空则添加
int xgid = (int)l["xgid"];
int gnbh = (int)l["gnbh"];
int cz = (int)l["cz"];
string text = (string)l["text"];
string str = text.Replace("'<'", "<"); //解码去除 html中< >
string str1 = str.Replace("'>'", ">");
var cx = db.yhsyzn.FirstOrDefault(u => u.hotelid == xgid);
JObject array = new JObject();
if (cx != null) //修改
{
if (Session["yhid"] != null)
{
int id = (int)Session["yhid"]; bool pd = qxyz.czyz(id, gnbh, cz); //为什么还要查询一遍权限
if (pd)
{
yhsyzn a = db.yhsyzn.FirstOrDefault(u => u.hotelid == xgid);//查询到对应id
a.text = str1;
db.Entry(a).State = System.Data.Entity.EntityState.Modified; //什么更新???
db.SaveChanges();
array["yz2"] = true;
}
else
{
array["yz2"] = false;
}
}
else
{
array["yz2"] = false;
}
}
else //添加
{
if (Session["yhid"] != null)
{
int id = (int)Session["yhid"];
bool pd = qxyz.czyz(id, gnbh, cz); //为什么还要查询一遍权限
if (pd)
{
yhsyzn a = new yhsyzn();
a.hotelid = xgid;
a.text = text;
db.yhsyzn.Add(a);
db.SaveChanges();
array["yz1"] = true;
}
else
{
array["yz1"] = false;
}
}
}
return Content(array.ToString());
}
Ajax中参数带有html格式的 传入后台保存【一】的更多相关文章
- Ajax中参数带有html格式的 传入后台保存【二】
KindEditor.ready(function (K) { //编辑器插件 window.editor1 = K.create('#ctjs', { uploadJson: '/Hotelgl/U ...
- Ajax中返回数据的格式
Ajax中常见的返回数据的格式有三种:分别为文本,XML和JSON 返回的文本格式我们在上一堂课Ajax基础介绍中已经介绍过了 Ajax.php Form.html:通过Ajax对象的response ...
- Ajax中XML和JSON格式的优劣比较
刚做完一个小的使用Ajax的项目.整个小项目使用JavaScript做客户端,使用PHP做服务器端.利用xmlHttpRequest组件作为交互工具,利用XML作为数据传输的格式.做完后基本做一个简单 ...
- ajax中url赋json格式的值时发生中文乱码的相关问题
具体流程:转入到jsp界面时会加载ajax,ajax转到url时传带hide在jsp界面的值titleString,其来源见下面的代码. String title=new String("\ ...
- ajax中参数traditional的作用
在使用ajax向后台传值的时候,有的时 $.ajax({ type: "post", async: true, data: { "records": [&quo ...
- SQL查询语句中参数带有中文查询不到结果
今天写个小demo的时候发现sql语句里面的username为中文的时候就不能查到正确结果,sql语句如下: String sql = "select * from user where u ...
- SpringMVC中使用Ajax POST请求以json格式传递参数服务端通过request.getParameter("name")无法获取参数值问题分析
SpringMVC中使用Ajax POST请求以json格式传递参数服务端通过request.getParameter("name")无法获取参数值问题分析 一:问题demo展示 ...
- JQuery中$.ajax()方法参数详解 及 async属性说明
url: 要求为String类型的参数,(默认为当前页地址)发送请求的地址. type: 要求为String类型的参数,请求方式(post或get)默认为get.注意其他http请求方法,例如put和 ...
- 【转】Ajax中send方法参数的使用(get/post)
Ajax中send方法参数的使用 一般情况下,使用Ajax提交的参数多是些简单的字符串,可以直接使用GET方法将要提交的参数写到open方法的url参数中,此时send方法的参数为null. 例如 : ...
随机推荐
- 常用的meta标签总结
<!-- 关键字,搜所引擎 SEO --><meta http-equiv="keywords" content="关键字1,关键字2,..." ...
- lzo压缩格式文件查看
使用lzop命令解压并查看 :lzop -cd xxx.lzo |more 附压缩命令:lzop xxx.log (生成xxx.log.lzo) 其它参数: # lzop -v test # 创建te ...
- 一些常用的操作MySQL数据库的sql语句
创建数据库:create database 数据库名; 删除数据库:drop datebase 数据库名; 查看数据库:show databases;(所有数据库) 使用数据库:use 数据库名;(之 ...
- SQL语句获取数据库中的表主键,自增列,所有列
SQL语句获取数据库中的表主键,自增列,所有列 获取表主键 1:SELECT TABLE_NAME,COLUMN_NAME FROM INFORMATION_SCHEMA.KEY_COLUMN_U ...
- 重要的几个热键[Tab], [ctrl]-c, [ctrl]-d
来源于:鸟哥的Linux私房菜 在继续后面的章节之前,这里很需要跟大家再来报告一件事,那就是我们的文字模式里头具有很多的功能按键, 这些按键可以辅助我们进行指令的编写与程序的中断呢!这几个按键请大家务 ...
- 关于Objective-C Associated Objects
一.相关函数 与Associated Objects相关的函数有三个 1 void objc_setAssociatedObject(id object, const void *key, id va ...
- JFrame
import java.awt.*; import java.awt.event.*; import javax.swing.*; public class KeyDemo extends JFram ...
- CodeForces 340E Iahub and Permutations
容斥原理,组合数. 找出有$cnt$个数字还有没放,那么总方案数就是$cnt!$. 总方案数里面包含了正确的和非正确的,我们需要将非正确的删去. 先删去$1$个数字$a[i]=i$的情况,发现会多删, ...
- UIAlerView、UIActionSheet 和UIAlertViewController(点击注销确认按钮实现)
- (IBAction)loginOut:(UIBarButtonItem *)sender { UIActionSheet *actionSheet = [[UIActionSheet alloc] ...
- [转]Delphi中QuotedStr介绍及使用
转自:http://www.360doc.com/content/13/0524/09/7873422_287679198.shtml 使用S:string; qry2.SQL.add('select ...