mxgraph中提示框中文乱码

可能在你使用

alert("打开成功!")

的时候,会发现提示框中的中文乱码的情况:

导致的原因可能是 alert 重定向了,那我使用自己封装的弹框。代码如下:

//弹框的封装(确定和取消)
function myAlert(str, click, useCancel) {
	var overflow = "";
	var $hidder = null;
	var clickHandler = click || $.noop;
	var myClickHandler = function() {
		$hidder.remove();
		$("body").css("overflow", overflow);
		clickHandler($(this).html() == "确定");
	};
	var init = function() {
		$hidder = $(
			"<div style='width:100%;height:100%;background:rgba(0,0,0,0.5);z-index:1000;text-align: center;position:fixed;left:0;top:0;'></div>"
		);
		var $myalert = $(
				"<div style='width:300px;position:absolute;top:30%;left:50%;margin-left:-150px;padding:20px;background:#fff;border-radius:5px;'>" +
				"<div style='padding-bottom:10px;border-bottom:1px solid #e5e5e5;font-size:20px;color:#f83;'>提示</div></div>")
			.appendTo($hidder);
		$("<div style='padding:10px 0;color:#333;border-bottom:1px solid #e5e5e5;'>" + str + "</div>").appendTo($myalert);
		var $myalert_btn_div = $("<div style='padding-top:10px;'></div>").appendTo($myalert);
		if (useCancel) {
			$(
					"<div style='float:left;width:50%;border-left:5px solid #fff;border-radius:2px;padding:7px 0;color:#fff;box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;background:#ccc;'>取消</div>"
				)
				.appendTo($myalert_btn_div).click(myClickHandler);
		}
		var $okBtn = $(
				"<div style='float: right;width:50%;color:#eee;border-radius:2px;padding:7px 0;color: #fff;box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;background:#f83;' class='bluebg1'>确定</div>"
			)
			.appendTo($myalert_btn_div).click(myClickHandler);
		overflow = $("body").css("overflow");
		$("body").css("overflow", "hidden").append($hidder);
	};
	init();
}

加入我全局引用后是这样调用的:

myAlert(mxResources.get('openSuccess'),onclick,true);

其中,openSuccess 是存在 grapheditor.txt中的。

 弹框就不会出现中文乱码:

好了,在遇到mxgraph提示框中文乱码可以这样做

发布了128 篇原创文章 · 获赞 250 · 访问量 4万+

猜你喜欢

转载自blog.csdn.net/XU441520/article/details/103573780
今日推荐