糾結(jié)了很久,偶然查詢表單的資料找到了突破口。還是由于自己知識不過關(guān)造成的。
enctype屬性規(guī)定在發(fā)送到服務(wù)器之前應(yīng)該如何對表單數(shù)據(jù)進行編碼。默認地,表單數(shù)據(jù)會編碼為
"application/x-www-form-urlencoded"。就是說,在發(fā)送到服務(wù)器之前,所有字符都會進行編碼(空格轉(zhuǎn)換為 "+" 加號,特殊符號轉(zhuǎn)換為 ASCII HEX 值)。
| 值 | 描述 |
|---|---|
| application/x-www-form-urlencoded | 在發(fā)送前編碼所有字符(默認) |
| multipart/form-data | 不對字符編碼。在使用包含文件上傳控件的表單時,必須使用該值。 |
| text/plain | 空格轉(zhuǎn)換為 "+" 加號,但不對特殊字符編碼。 |
當(dāng)然,表單是何如編碼的,服務(wù)器處理的請求的時候就需要使用相應(yīng)的解析器對其進行解碼。在這個案例中,需要使用 urlencoded 的解析器:
const urlencodedParser = bodyParser.urlencoded();
server.post('/test', urlencodedParser, (req, res, next) => {
console.log(req.body);
next()
})setTimeout第一個參數(shù)是 Function,而你傳了一個executeDataCopy(data),這是一個方法的調(diào)用(而不是方法本身),實際上你傳給setTimeout的是undefined,可以按上面幾位大佬的方法改。
剪貼板這個功能的實現(xiàn),依賴于運行環(huán)境的支持。
如果是瀏覽器上運行的網(wǎng)站,需要判定是否有document.execCommand方法,再按照樓上的例子執(zhí)行復(fù)制功能。
如果當(dāng)前瀏覽器不支持,那就只能提示用戶手動復(fù)制。
如果是混合開發(fā)的移動應(yīng)用,可以與native層交互,通過native層實現(xiàn)此功能。
data必須為函數(shù),結(jié)案
給綁定事件的元素上加上手勢樣式 cursor: pointer
----- update
我有點半瓶水亂晃的意思了。
剛剛使用 express 測試了一下, xhr 對象也會觸發(fā)預(yù)檢。
fetch 也會觸發(fā)預(yù)檢,之前答的是錯誤的。
按照你給的問題本身,看不出任何問題。
還是直接截圖代碼跟報錯信息吧。方便的話把頁面渲染的html結(jié)構(gòu)也拉出來看看
測試結(jié)果 沒有影響。
測試環(huán)境 win10 chrome 62.0.3202.62
初步判定可能是 bootstrap還是別的什么玩意影響了焦點。
建議題主把整個 .vue 丟上來一起看看。
<style lang="less" scoped>
.test {
width: 90%;
min-height: 600px;
background-color: #fff;
position: absolute;
top: 200px;
left: 5%;
padding: 50px;
input {
width:200px;
height:30px;
border:1px solid #c6c6c6;
}
.form-group {
width: 90%;
height:50px;
.col-sm-3,
.col-sm-10,
.col-sm-2 {
display: inline-block;
}
.control-label {
display: inline-block;
}
}
}
</style>
<template>
<div class="test">
<form id="formID" class="form-horizontal" style="width:900px; margin: 0 auto;">
<div class="form-group">
<div class="col-sm-2 control-label">班次名稱</div>
<div class="col-sm-10">
<input type="text" id="sname" name="sname" class="form-control" v-model="kqSchedule.name" placeholder="班次名稱" required/>
<label for="sname" class="error"></label>
</div>
</div>
<div class="form-group">
<div class="col-sm-2 control-label">上下班次數(shù)設(shè)置</div>
<label class="radio-inline">
<input type="radio" name="type" value="1" v-model="kqSchedule.type" /> 一天一次上下班
</label>
<label class="radio-inline">
<input type="radio" name="type" value="2" v-model="kqSchedule.type" /> 一天二次上下班
</label>
</div>
<div v-if="kqSchedule.type > 0" style="border: 1px solid #007fff; border-radius: 5px; margin-bottom: 15px;">
<div class="form-group">
<div class="col-sm-2 control-label">第一次上下班</div>
</div>
<div class="form-group">
<div class="col-sm-2 control-label">上班</div>
<div class="col-sm-3">
<input type="time" class="form-control" v-model="firstScheduleWorktime.startTime" placeholder="上班時間" />
</div>
<div class="col-sm-2 control-label">最早取卡時間</div>
<div class="col-sm-3">
<input type="time" class="form-control" v-model="firstScheduleWorktime.preStartTime" placeholder="最早取卡時間" />
</div>
</div>
<div class="form-group">
<div class="col-sm-2 control-label">下班</div>
<div class="col-sm-3">
<input type="time" class="form-control" v-model="firstScheduleWorktime.endTime" placeholder="下班時間" />
</div>
<div class="col-sm-2 control-label">最晚取卡時間</div>
<div class="col-sm-3">
<input type="time" class="form-control" v-model="firstScheduleWorktime.lateEndTime" placeholder="最晚取卡時間" />
</div>
</div>
</div>
<div v-if="kqSchedule.type >= 2" style="border: 1px solid #007fff; border-radius: 5px;margin-top: 2px; margin-bottom: 15px;">
<div class="form-group">
<div class="col-sm-2 control-label">第二次上下班</div>
</div>
<div class="form-group">
<div class="col-sm-2 control-label">上班</div>
<div class="col-sm-3">
<input type="time" class="form-control" v-model="secondScheduleWorktime.startTime" placeholder="上班時間" />
</div>
<div class="col-sm-2 control-label">最早取卡時間</div>
<div class="col-sm-3">
<input type="time" class="form-control" v-model="secondScheduleWorktime.preStartTime" placeholder="最早取卡時間" />
</div>
</div>
<div class="form-group">
<div class="col-sm-2 control-label">下班</div>
<div class="col-sm-3">
<input type="time" class="form-control" v-model="secondScheduleWorktime.endTime" placeholder="下班時間" />
</div>
<div class="col-sm-2 control-label">最晚取卡時間</div>
<div class="col-sm-3">
<input type="time" class="form-control" v-model="secondScheduleWorktime.lateEndTime" placeholder="最晚取卡時間" />
</div>
</div>
</div>
<div class="form-group">
<div class="col-sm-2 control-label">午休開始時間</div>
<div class="col-sm-3">
<input type="time" class="form-control" style="cursor: pointer;" v-model="kqSchedule.noonrestStartTime" placeholder="午休開始時間" />
</div>
<div class="col-sm-2 control-label">午休結(jié)束時間</div>
<div class="col-sm-3">
<input type="time" class="form-control" style="cursor: pointer;" v-model="kqSchedule.noonrestEndTime" placeholder="午休結(jié)束時間" />
</div>
</div>
<div class="form-group">
<div class="col-sm-2 control-label">啟用</div>
<div class="col-sm-10">
<label class="radio-inline">
<input type="radio" name="isused" value="Y" v-model="kqSchedule.isused" /> 正常
</label>
<label class="radio-inline">
<input type="radio" name="isused" value="N" v-model="kqSchedule.isused" /> 禁用
</label>
</div>
</div>
<div class="form-group">
<div class="col-sm-2 control-label"></div>
<input type="button" class="btn btn-primary" @click="saveOrUpdate" value="保存" />
<input type="button" class="btn btn-warning" @click="reload" value="返回" />
</div>
</form>
</div>
</template>
<script>
export default {
//props:{
//props:{
//type:String,
//default:String,
//},
//},
data() {
return {
kqSchedule: {
name: "",
type: "",
isused: "",
noonrestStartTime: "",
noonrestEndTime: ""
},
firstScheduleWorktime: {
startTime: "",
preStartTime: "",
endTime: "",
lateEndTime: ""
},
secondScheduleWorktime: {
startTime: "",
preStartTime: "",
endTime: "",
lateEndTime: ""
}
};
},
methods: {
saveOrUpdate() {
//dosth
},
reload() {
//dosth
}
}
//computed:{
//computedA(){
//return xxx
//},
//},
//watch:{
//watchA(val,oldval){//必須是data||props里面已經(jīng)有的key才行,普通值
////dosth
//},
//watchB:{//必須是data||props里面已經(jīng)有的key才行,對象obj
//deep:true,
//handler(val,oldval){
////dosth
//}
//},
//},
//created () {
//},
//mounted () {
//},
//beforeDestroy () {
//},
//beforeRouteEnter(to, from, next) {
//next(vm => {
//// 通過 `vm` 訪問組件實例
//});
//},
//beforeRouteLeave(to, from, next){
//// dosth 可以用this訪問當(dāng)前組件上下文
//next();
//},
};
</script>checked 其實是個獨立屬性。 checked 和 checked="checked" 甚至 checked=1 都是一個意思。
所以,設(shè)置的時候注意
$("input[name='myname']").prop("checked",false); es6的函數(shù)聲明
monkey patchXMLHttpRequest 對象的原型方法吧,因為請求庫不管怎么封裝,一般內(nèi)部還是XMLHttpRequest,有的可能也用現(xiàn)代瀏覽器的fetch,比如:
(function(send) {
XMLHttpRequest.prototype.send = function(data) {
// do something...
send.call(this, data);
};
})(XMLHttpRequest.prototype.send);
如果要這么做的話,注意性能問題。
變換一下數(shù)據(jù)結(jié)構(gòu)
let a = [
[
{ "11": "" },
{ "1": "" },
{ "2": "" },
]
]
let b={
"11":"",
"1":"",
"2":"",
}
for(let i in a){
for(let j in a[i]){
console.log(a[i][j])
}
}
/*
{ '11': '' }
{ '1': '' }
{ '2': '' }
*/
for(let k in b){
console.log(k+":"+b[k])
}
/*
1:
2:
11:
*/沒有什么特別限制,看你服務(wù)器怎么處理了
那你可以在用vuex進行控制,登錄組件引入在app.vue 中,如果有l(wèi)ayout就引入在layout中
這個應(yīng)該發(fā)成文章而不是問題吧
通過post方式是可以往里面添加數(shù)據(jù)的,具體操作請看:http://www.cnblogs.com/aaron-...
你可以打印一下click事件,看看單擊事件是否觸發(fā)。
知道了,剛弄canvas,軌跡當(dāng)前點的sx、sy應(yīng)該是上一個點的ex、ey,處理之后就好了。
把curl寫在單獨的一個php里,做代理。前端每次包好數(shù)據(jù)、用ajax去發(fā)請求給這個php,在php里拿到數(shù)據(jù),重新打包發(fā)給真正的地址,返回的內(nèi)容再reture給前端頁面就可以了。這樣前端不會有跨域問題(因為真正的請求是后端發(fā)的),另外還可以隱藏實際的接口地址(比如如果是部署在阿里云平臺的話,接口域名就可以用云平臺的內(nèi)網(wǎng)地址代替)。
document.getElementById('select').innerHTML // 這句獲取id為select的內(nèi)容北大青鳥APTECH成立于1999年。依托北京大學(xué)優(yōu)質(zhì)雄厚的教育資源和背景,秉承“教育改變生活”的發(fā)展理念,致力于培養(yǎng)中國IT技能型緊缺人才,是大數(shù)據(jù)專業(yè)的國家
達內(nèi)教育集團成立于2002年,是一家由留學(xué)海歸創(chuàng)辦的高端職業(yè)教育培訓(xùn)機構(gòu),是中國一站式人才培養(yǎng)平臺、一站式人才輸送平臺。2014年4月3日在美國成功上市,融資1
北大課工場是北京大學(xué)校辦產(chǎn)業(yè)為響應(yīng)國家深化產(chǎn)教融合/校企合作的政策,積極推進“中國制造2025”,實現(xiàn)中華民族偉大復(fù)興的升級產(chǎn)業(yè)鏈。利用北京大學(xué)優(yōu)質(zhì)教育資源及背
博為峰,中國職業(yè)人才培訓(xùn)領(lǐng)域的先行者
曾工作于聯(lián)想擔(dān)任系統(tǒng)開發(fā)工程師,曾在博彥科技股份有限公司擔(dān)任項目經(jīng)理從事移動互聯(lián)網(wǎng)管理及研發(fā)工作,曾創(chuàng)辦藍懿科技有限責(zé)任公司從事總經(jīng)理職務(wù)負責(zé)iOS教學(xué)及管理工作。
浪潮集團項目經(jīng)理。精通Java與.NET 技術(shù), 熟練的跨平臺面向?qū)ο箝_發(fā)經(jīng)驗,技術(shù)功底深厚。 授課風(fēng)格 授課風(fēng)格清新自然、條理清晰、主次分明、重點難點突出、引人入勝。
精通HTML5和CSS3;Javascript及主流js庫,具有快速界面開發(fā)的能力,對瀏覽器兼容性、前端性能優(yōu)化等有深入理解。精通網(wǎng)頁制作和網(wǎng)頁游戲開發(fā)。
具有10 年的Java 企業(yè)應(yīng)用開發(fā)經(jīng)驗。曾經(jīng)歷任德國Software AG 技術(shù)顧問,美國Dachieve 系統(tǒng)架構(gòu)師,美國AngelEngineers Inc. 系統(tǒng)架構(gòu)師。