You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
143 lines
4.4 KiB
143 lines
4.4 KiB
5 years ago
|
<!DOCTYPE html>
|
||
|
<html>
|
||
|
|
||
|
<head>
|
||
|
<meta charset="utf-8">
|
||
|
<meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
|
||
|
<title>问题反馈</title>
|
||
|
<!--REM自适应布局JS-->
|
||
|
<link rel="stylesheet" type="text/css" href="../../../lib/css/mui.min.css">
|
||
|
<link rel="stylesheet" type="text/css" href="../../../lib/css/basic.css"/>
|
||
|
<link rel="stylesheet" type="text/css" href="../../css/base.css" />
|
||
|
<script src="../../../lib/js/mui.min.js"></script>
|
||
|
<script src="../../../lib/js/vue.js"></script>
|
||
|
<script src="../../../lib/js/app.js"></script>
|
||
|
<script src="../../js/base/rem-layout.js"></script>
|
||
|
<script type="text/javascript" src="../../js/my/my_ajax.js"></script>
|
||
|
<script type="text/javascript" src="../../js/base/regular.js"></script>s
|
||
|
<script src="../../../lib/js/require2.1.11.js"></script>
|
||
|
</head>
|
||
|
<style>
|
||
|
.app-textarea {
|
||
|
margin-top: 0.25rem;
|
||
|
}
|
||
|
|
||
|
.alert-text div {
|
||
|
margin-bottom: 0.05rem;
|
||
|
}
|
||
|
|
||
|
.text-right {
|
||
|
float: right;
|
||
|
margin-right: 0.05rem;
|
||
|
color:#6A85E8 !important;
|
||
|
}
|
||
|
|
||
|
</style>
|
||
|
|
||
|
<body>
|
||
|
<div id="data-info">
|
||
|
<header class="mui-bar mui-bar-nav app-header app-header-darkly">
|
||
|
<a class="mui-action-back mui-icon mui-icon-left-nav mui-pull-left"></a>
|
||
|
<h1 class="mui-title">{{dataBase.MyFeedBackTitle}}</h1>
|
||
|
</header>
|
||
|
<div class="mui-content">
|
||
|
<div>
|
||
|
<textarea v-model="text_area" class="app-textarea app-textarea-darkly" @input="text_count" maxlength="200" rows="10" :placeholder="dataBase.MyFeedBackPlaceholder"></textarea>
|
||
|
<div class="app-text-color app-text-warning-color alert-text">
|
||
|
<div>{{dataBase.MyFeedBackAlert1}}</div>
|
||
|
<span>{{dataBase.MyFeedBackAlert2}}</span>
|
||
|
<span class="app-text-color text-right">{{text_length}}/{{text_max}}</span>
|
||
|
</div>
|
||
|
|
||
|
<button id="submit" class="app-btn-darkly">{{dataBase.MyFeedBackSubmiBTN}}</button>
|
||
|
|
||
|
</div>
|
||
|
</div>
|
||
|
</div>
|
||
|
</body>
|
||
|
|
||
|
</html>
|
||
|
<script>
|
||
|
var data_info = new Vue({
|
||
|
el: "#data-info",
|
||
|
data: {
|
||
|
dataBase: {},
|
||
|
text_area: "",
|
||
|
text_length: "0",
|
||
|
text_max: "200"
|
||
|
},
|
||
|
methods: {
|
||
|
text_count: function() {
|
||
|
this.text_length = this.text_area.length;
|
||
|
}
|
||
|
}
|
||
|
})
|
||
|
|
||
|
mui.plusReady(function() {
|
||
|
|
||
|
document.getElementById("submit").addEventListener("tap", function() {
|
||
|
var regular_emoji = /[\uD83C|\uD83D|\uD83E][\uDC00-\uDFFF][\u200D|\uFE0F]|[\uD83C|\uD83D|\uD83E][\uDC00-\uDFFF]|[0-9|*|#]\uFE0F\u20E3|[0-9|#]\u20E3|[\u203C-\u3299]\uFE0F\u200D|[\u203C-\u3299]\uFE0F|[\u2122-\u2B55]|\u303D|[\A9|\AE]\u3030|\uA9|\uAE|\u3030/ig;
|
||
|
var emoji_test = regular_emoji.test(data_info.text_area);
|
||
|
if(!data_info.text_area || data_info.text_area == '' || data_info.text_area.length <= 0) {
|
||
|
mui.toast(data_info.dataBase.MyFeedBackTextNullMsg);
|
||
|
} else if(emoji_test) {
|
||
|
mui.toast(data_info.dataBase.MyFeedBackTextErrorMsg);
|
||
|
} else if(!regular.chinese_english1.test(data_info.text_area)) {
|
||
|
mui.toast(data_info.dataBase.MyFeedBackTextErrorMsg);
|
||
|
} else {
|
||
|
saveFeedback();
|
||
|
}
|
||
|
});
|
||
|
|
||
|
});
|
||
|
|
||
|
function saveFeedback() {
|
||
|
plus.nativeUI.showWaiting(data_info.dataBase.ShowWaiting);
|
||
|
var username = app.getWalletUserLocalStorage().username;
|
||
|
mui.ajax(myAjaxJs.AJAX_SAVE_FEEDBACK.getUrl, {
|
||
|
headers: {
|
||
|
"X-Requested-Token": localStorage.getItem("user_token"),
|
||
|
},
|
||
|
data: {
|
||
|
userName: username,
|
||
|
suggestion: data_info.text_area
|
||
|
},
|
||
|
dataType: 'json', //服务器返回json格式数据
|
||
|
type: myAjaxJs.AJAX_SAVE_FEEDBACK.getType, //HTTP请求类型
|
||
|
timeout: 10000,
|
||
|
success: function(data) {
|
||
|
if(data.code == "200") {
|
||
|
plus.nativeUI.closeWaiting();
|
||
|
mui.toast(data_info.dataBase.SubmitSuccessMsg, data_info.dataBase.AlertMsg);
|
||
|
mui.back();
|
||
|
self.close();
|
||
|
} else if(data.code == "201" || data.code == "202") { //未登录
|
||
|
plus.nativeUI.closeWaiting();
|
||
|
mui.openWindow({
|
||
|
id: "mine/html/wallet_login.html",
|
||
|
url: "../wallet_login.html"
|
||
|
});
|
||
|
} else {
|
||
|
plus.nativeUI.closeWaiting();
|
||
|
mui.alert(data.msg);
|
||
|
}
|
||
|
},
|
||
|
error: function(xhr, type, errorThrown) {
|
||
|
plus.nativeUI.closeWaiting();
|
||
|
// mui.alert(data_info.dataBase.AjaxError2, data_info.dataBase.AlertMsg)
|
||
|
}
|
||
|
});
|
||
|
}
|
||
|
|
||
|
|
||
|
appLanguageFun();
|
||
|
/**
|
||
|
* 国际化方法
|
||
|
*/
|
||
|
function appLanguageFun() {
|
||
|
var type = app.getLanguageLocalStorage();
|
||
|
require(['../../js/language/' + type], function(dataBase) {
|
||
|
data_info.dataBase = dataBase;
|
||
|
})
|
||
|
}
|
||
|
</script>
|