2017年12月6日 星期三

ajax檔案上傳

之前有做過圖片上傳,把遇到的事情記下來

用post方式傳檔案
<input type="file" name="myfile">

我後端用PHP抓不到
$_FILES["myfile"]["name"]

換這樣
<input type="file" id="myfile">
就抓的到了
居然是吃ID(是我見鬼嗎),這樣對嗎?



換ajax傳檔案

<input type="file" id="myfile">

我後端用PHP抓不到
$_FILES["myfile"]["name"]

換這樣
<input type="file" name="myfile">
換這樣就抓的到了
變正常吃NAME了
$("form").submit(function(e) {
e.preventDefault();
var formData = new FormData(this);

$.ajax({
url: '/123.php',
type: 'POST',
data: formData,
success: function (data) {
},
cache: false,
contentType: false,
processData: false
});
});

這樣欺負我QQajax傳檔案用formData來做
要注意:
through FormData object, but unfortunately it is not supported by all/old browsers.FormData support starts from following desktop browsers versions. IE 10+, Firefox 4.0+, Chrome 7+, Safari 5+, Opera 12+


附上ajax傳檔的連結:
http://www.jianshu.com/p/46e6e03a0d53
https://stackoverflow.com/questions/2320069/jquery-ajax-file-upload
檔案加資料一起傳
https://stackoverflow.com/questions/10899384/uploading-both-data-and-files-in-one-form-using-ajax



我常用的IDE功能

因為coding的年齡來不算太長,所以工具也不算熟用
用過
notepad++
eclipse
sublime
netbeans
visualstudiocode
我工作時間還不到兩年,所以有些只用了1個禮拜,有些用了幾個月,最長的也不到一年...
以下列visaulStudioCode,常忘記但會用到的快捷鍵,

ctrl+k+[
摺疊,可以幫我把所有的function摺起來
ctrl+u
游標回到上一個位置
shift+alt+f
格式化code
shift+alt+滑鼠左鍵
多游標操作
shift+alt+↓
複製上一行
ctrl+tab
切換到上個頁籤
ctrl+shift+\
游標跳到對應的括號
上頁下頁  alt +←    alt +→


內建貼心功能
/**    在function上方打,就會出現format好的註釋,非常方便


外掛功能
Align   ctrl+alt+a   將code像表格般對齊



在 vscode 1.8 版本增加了如下两个快捷键配置
自定义快捷键配置中 keybindings.json 增加如下代码即可
    {
        "key": "ctrl+shift+u",
        "command": "editor.action.transformToUppercase",
        "when": "editorTextFocus"
    },
    {
        "key": "ctrl+shift+l",
        "command": "editor.action.transformToLowercase",
        "when": "editorTextFocus"
    }

https://www.zhihu.com/question/48779613/answer/146510029


http://qingbob.com/visual-studio-code-tips/

https://www.zhihu.com/question/37623310

快捷键大全
http://blog.csdn.net/crper/article/details/54099319

2017年12月4日 星期一

javascript動態改變樣式

我們都知道添加CSS的方法有3+1種

行內套用 (Inline)
嵌入套用 (Embed)
外部連接套用 (External Link)
匯入套用 (Import)
https://www.1keydata.com/css-tutorial/tw/apply.php#link



但是要動態改變css該怎麼做呢?

1.改變行內套用(最基本的)
2.改變外部連結套用
通过改变外嵌CSS样式文件即时改变网页样式
http://blog.csdn.net/johnsuna/article/details/4346258

3.改變嵌入套用
YUI中使用了一个很好的办法:style.appendChild(document.createTextNode(styles));采用createTextNode将样式字符串添加到<style>标签内
http://www.css88.com/archives/4426


https://stackoverflow.com/questions/4232557/jquery-css-write-into-the-style-tag

2017年12月3日 星期日

css3反轉HTML順序

https://stackoverflow.com/questions/25695000/how-to-display-a-reverse-ordered-list-in-html

1.You could rotate the parent element 180deg and then rotate the children elements -180deg.
2.Alternatively, you could use flex boxes along with the order property.
3.you could also use counter-increment along with a psuedo element.(this isn't technically reversing)
4.It allows you to reverse the order with the flex-directionproperty.
5.<ol reversed>(this isn't technically reversing)


有的時候因為有太多的板,HTML順序不會因為要改個皮而重新排版,此時就很考驗美術的想像力了QQ

2017年11月23日 星期四

取出form表單的參數,用來放進ajax傳送

記一下...關於JQuery 的 serialize / serializeArray / parrm :
1. serialize()方法也是作用于一个JQuery对象,它能够将DOM元素内容序列化为字符串,serializeArray()方法不是返回字符串,而是将DOM元素序列化后,返回JSON格式的数据
2.在JQuery中还有一个与serialize()类似的方法--serializeArray(),该方法不是返回字符串,而是将DOM元素序列化后,返回JSON格式的数据。
3.$.param()方法是serialize()方法的核心,用来对一个数组或对象按照key/value进行序列化 https://stackoverflow.com/questions/9267072/jquery-serialize-an-object

http://blog.csdn.net/baidu_31333625/article/details/72628418

https://stackoverflow.com/questions/1184624/convert-form-data-to-javascript-object-with-jquery

2017年11月22日 星期三

跨域的請求會請求兩次?

為什打開F12我的請求會有兩次,爾且第二次才有回應?


In 
CORS, a preflight request with the OPTIONS method is sent, so that the server can respond whether it is acceptable to send the request with these parameters

https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/OPTIONS





原來是因為ajax異步的關係

https://forums.asp.net/t/2068723.aspx?AJAX+called+twice+and+success+event+runs+second+time+

2017年11月16日 星期四

我跳槽javascript的經過

說是跳槽也不算啦,因為老闆是同一個,只是做的東西不同。

事情是這樣的:
就在今年的3/6我在台北開始了我的第二份寫程式工作,工作內容跟我第一份非常相似,薪水也是我在中部可以領到的薪水,就在試用期兩個月的時候,說要提早轉正,這樣我有端午禮金,但是試用期過後我薪水沒有漲.....因為面試時我填的預期薪水就是試用薪水,我心裡想你早說我就不會來這家了........
人事問我說:你怎麼轉正看起來沒有開心的感覺
我怎可能開心得起來QQ
原本預計的薪水試用期過後會多三千,結果沒有!!!
基於繳完房租繳完押金我怕找工作時間會活不下去,我就跟人事說,滿半年後我會再提加薪一次(心裡想說,在不加就走人)

所以差不多在8月份的時候我跟同事聊到想加薪,因緣際會之下老闆知道我想加薪.....,
跟我說
"他知道我來台北是想要學東西,前半年讓我在這間是磨練,如果要加薪的話,可能要到他另一家公司,因為這間是他和別人合夥的,不能說加就加"
於是我當然好,雖然目前這家很爽,雖然過去特休要重計,雖然過去比較責任制,雖然過去每天上班40分下班40分的車程,雖然過去要交通費,但是這邊薪水真的太少(沒辦法我有租房又要給家用),爾且終於跟面試的時候講得比較像了   "想學東西跟我學就好"  面試時老闆霸氣拋下這句話,我至今沒有忘...。


於是8/11號就到了現在這一家

終於要碰新東西了,我在這間變成純前端,當然偶爾還是要還是要幫忙PHP專案,但是就不用像之前這樣兩邊都碰都不精了,現在薪水扣掉交通費還有1000多,希望試用期過後有加薪喔(不然就要哭回中部了)

之後再來寫這3個月在新公司的歷程.....