我想要革命想要解脫....
最近一個月,恍若隔世,天天加班,昨晚終於發版了,今天才喘一口氣。有時候,即便你工作效率再怎麼高,擼碼再怎麼快也無可避免的會加班。不信的話,可以先給你定一個交付時間,然後不斷的給你加需求,就讓你一個人做,偶爾再給你來幾下變更,看你怎麼死?本來做專案,需求、資源、時間就是一個鐵三角,一旦你強行要打破這個平衡,那麼註定就是杯具了.........而在天朝,很多時候,是需求還沒定,先給你定時間,然後資源基本上也是定的,又不願在需求上做減法,甚至還做加法,結果就呵呵了......領導層只看結果,不管你過程,那麼程式設計師面對這樣的情形,也有自己的反抗方式:我偷工減料還不行麼?可是出來混,總是要還的,然後就是一個惡性迴圈...........
劉德華的《練習》可以形容我本月的狀態:“我已開始加班,開始天天加班,人快猝死在電腦旁,試著刪除資料庫再跑路,那些曾經準點下班的美好和回憶.....”。
用《圓月彎刀》的話說:“有些人,縱然天天擼碼,也永遠無法成為碼中之神........”。
感覺全棧程式設計師的杯具就是專案全是你一個人做!美工、前端、介面、資料庫、移動app、部署、運維、售後........
我已經不想再做程式猿,因為太苦逼,在還沒有想好接下來做啥之前,我會一直苦逼下去.......
吐槽完畢,繼續記錄和分享。
bootstrapValidator動態載入資料的下拉框必填驗證失效
有那種資料是動態獲取的下拉列表類似的,如select,
兩處要修改,一處是:excluded: [':disabled']
$('form').bootstrapValidator({ message: 'This value is not valid', feedbackIcons: { valid: 'glyphicon glyphicon-ok', invalid: 'glyphicon glyphicon-remove', validating:'glyphicon glyphicon-refresh' }, excluded: [':disabled'],
另一處是在欄位上新增觸發條件:trigger: "change",
ORG_CODE: { trigger: "change", validators: { notEmpty: { message: '所屬專案不能為空' } } },
對於隱藏欄位賦值後,沒有觸發驗證的問題,可以在後面新增change()方法,如下:
$('#' + _equipmentTree.setting.name).val(sid.trim(',')).change();
bootstrap-select元件搜尋無效
元件初始化程式碼:$('#BuildList').selectpicker({});
當select中的資料是動態載入的時候,當資料載入完之後要記得新增如下程式碼:
$("#BuildList").selectpicker('refresh');
jQuery判斷checkbox是否選中的方法
方法一:
if ($("#checkbox-id").get(0).checked) { // do something } 方法二: if($('#checkbox-id').is(':checked')) { // do something } 方法三: if ($('#checkbox-id').attr('checked')) { // do something }
ztree全選反選
var zTree = $.fn.zTree.getZTreeObj("zt_EQUIPMENT_IDs"); zTree.checkAllNodes(isChecked);
isChecked為true是全選,false為反選。
使用jquery控制div的顯示與隱藏
使用jquery控制div的顯示與隱藏,一句話就能搞定,例如:
1.$("#id").show()表示為display:block,
$("#id").hide()表示為display:none;
2.$("#id").toggle()切換元素的可見狀態。如果元素是可見的,切換為隱藏的;如果元素是隱藏的,則切換為可見的。
3.$("#id").css('display','none');//隱藏
$("#id").css('display','block');//顯示
或者
$("#id")[0].style.display='none';
display=none 控制物件的隱藏
display=block控制物件的顯示
4.$("#id").css('visibility','hidden');//元素隱藏
$("#id").css('visibility','visible');//元素顯示
CSS visibility 屬性規定元素是否可見。
visible 元素可見。
hidden 元素不可見。
collapse 在表格元素中使用時,此值可刪除一行或一列,但它不影響表格的佈局。被行或列佔據的空間會留給其他內容使用。如果此值被用在其他的元素上,會呈現為 "hidden"。
inherit 從父元素繼承 visibility 屬性的值。
bootstrap表頭縮在一起
當bootstrap用在tab中或者是用在remote載入的一個新介面中的時候,有時候會出現表頭自動縮在一起的問題。例如:
呼叫程式碼如下:
$('#defaultModal').modal({ show: true, backdrop: 'static', remote: obj.detailUrl + "?equipid=" + encodeURIComponent(equipid) + "&&no=" + billNo + "&&state=" + state + "&&MenuId=" + $("#hidfMenuId").val() });
解決方式,新增如下程式碼:
$("#defaultModal").on("shown.bs.modal", function () { $.fn.dataTable.tables({ visible: true, api: true }).columns.adjust(); });
雖然解決了表頭縮在一起的問題,但是還會存在表頭閃一下的問題,這是因為在自動計算表頭的寬高。
其它方案:在datatable初始化完成之後,設定表頭的寬度。(前提:指定每一列的寬度)
setTimeout(function () { var _table = $("#table_maintainTemplate_select_wrapper .dataTables_scrollHeadInner table"); alert(_table.width()) if (200 < _table.width() < 500) { $("#table_maintainTemplate_select_wrapper .dataTables_scrollHeadInner table").width(566); } }, 300);
取不到input的value值
有時候,我們會發現html中value中明明有值了,但是通過js獲取不到的情況。如:通過ajax動態載入的介面。
解決方式:
為text新增onchange事件
<input id="txtCode" type="text" class="form-control input-inline" onchange="changeValue(this)">
js程式碼如下:
var _txtCode; function changeValue(obj) { $(obj).attr("value", $(obj).val()); _txtCode = $(obj).val(); }
..................