14,954
edits
m (→JSON tools) |
m (→JSON tools) |
||
| (41 intermediate revisions by the same user not shown) | |||
| Line 36: | Line 36: | ||
** <nowiki>$("#selector_id").css("display", "");</nowiki> or <nowiki>$("#selector_id").css("display", "block");</nowiki> | ** <nowiki>$("#selector_id").css("display", "");</nowiki> or <nowiki>$("#selector_id").css("display", "block");</nowiki> | ||
** <nowiki>$("#selector_id").css("display", "none");</nowiki> | ** <nowiki>$("#selector_id").css("display", "none");</nowiki> | ||
== form submit validation == | |||
* [http://www.w3schools.com/jsref/event_form_onsubmit.asp Form onsubmit Event]. code snippet<ref>[http://www.w3schools.com/js/js_form_validation.asp JavaScript Form Validation]</ref>: | |||
<pre> | |||
<form name="myForm" action="demo_form.asp" onsubmit="return validateForm()" method="post">... | |||
</pre> | |||
* jQuery .submit()<ref>[http://api.jquery.com/submit/ .submit() | jQuery API Documentation]</ref> | |||
<pre> | |||
$(document).ready(function(){ | |||
$('#form').submit( function(){ | |||
return validateForm(); | |||
}); | |||
}); | |||
function validateForm() | |||
{ | |||
if ( condition ) | |||
{ | |||
alert('form was not validated'); | |||
return false; | |||
} | |||
} | |||
</pre> | |||
* [http://jqueryvalidation.org/ jQuery Validation Plugin | Form validation with jQuery]<ref>[http://brooky.cc/2011/08/04/using-jquery-validation-plugin-for-form-validation/ 好用的表單驗證工具 – jQuery validation plugin | brooky's blog]</ref> | |||
== Count the number of visible table rows == | == Count the number of visible table rows == | ||
| Line 43: | Line 68: | ||
count the number of all table rows (includes visible and invisible rows) | count the number of all table rows (includes visible and invisible rows) | ||
* <nowiki>document.getElementById( table_id ).rows.length;</nowiki> | * <nowiki>document.getElementById( table_id ).rows.length;</nowiki> | ||
== refresh or redirect the webpage == | |||
* [http://rental.zhupiter.com/postshow_184_1_1.html 轉導、轉向(Redirect)網址的方法. - 諸彼特租屋網] {{access | date=2014-03-18 }} | |||
* alternative: refresh partial content which only required to be updated | |||
== JSON tools == | == JSON tools == | ||
Online | JSON schema generator | ||
* [http://json.parser.online.fr/ Json Parser Online] | * {{Gd}} [http://www.jsonschema.net/ JSON schema generator] | ||
* [http://www. | |||
JSON validator | |||
* {{Gd}} [https://jsonformatter.curiousconcept.com/ JSON Formatter & Validator] 會標示語法錯誤的地方 {{access | date = 2024-05-15}} | |||
* [http://jsonlint.com/ JSONLint - The JSON Validator] {{access | date = 2015-09-08}} | |||
* [https://jsonviewer.stack.hu/ Online JSON Viewer and Formatter] 語法錯誤只會顯示錯誤訊息「JSON error: Invalid JSON variable」{{access | date = 2024-05-15}} | |||
JSON viewer 通常也包含 validator 功能 | |||
* {{Gd}} [http://www.jsondata.ninja/ JSON Data Ninja] {{access | date = 2017-05-24}} | |||
*# 輸入: 文字 | |||
*# 可以把 JSON 多筆資料轉成表格格式 | |||
*# 有標示某節點下的資料筆數 | |||
*# 會將編碼後的中文還原成可讀 | |||
* [http://json.parser.online.fr/ Json Parser Online] {{access | date = 2017-05-24}} | |||
*# 輸入: 文字 | |||
*# 沒有顯示成 Tree 結構,但有美化語法方便閱讀 | |||
*# 有標示某節點下的資料筆數 | |||
*# 會將編碼後的中文還原成可讀 | |||
* [http://codebeautify.org/jsonviewer Best Online JSON Viewer, Beautifier, Formatter, Analyser, Minify, Converter] {{access | date = 2017-05-24}} | |||
*# 輸入: 文字 | |||
*# Tree Viewer 顯示結構 | |||
*# 有標示某節點下的資料筆數 | |||
*# <span style="color: #999;">不會將編碼後的中文還原成可讀</span> | |||
* [https://chrome.google.com/webstore/detail/jsonview/chklaanhfefbnpoihckbnefhakgolnmc JSONView] for {{Chrome}}: beautify the remote JSON file | |||
*# 輸入: 網址 | |||
*# 沒有顯示成 Tree 結構,但有美化語法方便閱讀 | |||
*# <span style="color: #999;">沒有標示某節點下的資料筆數</span> | |||
*# 會將編碼後的中文還原成可讀 Unicode/Chinese issue: the garbled Chinese characters will become human readable! | |||
* [https://chrome.google.com/webstore/detail/postman/fhbjgbiflinjbdggehcddcbncdddomop Postman] for {{Chrome}}. [[HTTP request and response data tool]] {{access | date = 2017-06-09}} | |||
*# 輸入: 網址 | |||
*# 沒有顯示成 Tree 結構,但有美化語法方便閱讀 | |||
*# <span style="color: #999;">沒有標示某節點下的資料筆數</span> | |||
*# 會將編碼後的中文還原成可讀 | |||
* [https://chrome.google.com/webstore/detail/json-formatter/bcjindcccaagfpapjjmafapmmgkkhgoa JSON Formatter] | |||
* [http://jsonviewer.codeplex.com/ JSON Viewer] v. 1.2.0.0 解壓縮直接執行 JsonView\JsonView.exe (免安裝即可執行) {{Win}} | |||
** 大檔 (檔案大小 6MB) 測試: 停頓約半分鐘後,即可使用 | |||
* [https://notepad-plus-plus.org/ Notepad++] v. 6.8.7 + [https://sourceforge.net/projects/nppjsonviewer/ JSONViewer Notepad++ plugin] v.1.22 | |||
** 大檔 (檔案大小 6MB) 測試: 沒有反應超過5分鐘 | |||
* [http://youknowone.github.io/VisualJSON/ VisualJSON by youknowone] v. 1.6.0 on {{Mac}} | |||
*# 輸入: 網址或文字 | |||
*# 顯示成 Tree 結構 | |||
*# 有標示某節點下的資料筆數 | |||
*# 會將編碼後的中文還原成可讀 | |||
* ''$'' [http://www.cocoajsoneditor.com/ Cocoa JSON Editor - Powerful JSON String Editor for Developers, API, Endpoints, Rest client] v. 1.2.5 on {{Mac}} | |||
*# 輸入: 文字或檔案 | |||
*# Tree Viewer 顯示結構 | |||
*# 有標示某節點下的資料筆數 | |||
*# 會將編碼後的中文還原成可讀 | |||
* ''$'' [http://textlab-app.com/ TextLab] v. 1.3.4 on {{Mac}} | |||
* [ | *# 輸入: 文字或檔案 | ||
*# 沒有顯示成 Tree 結構,但有美化語法方便閱讀 | |||
*# <span style="color: #999;">沒有標示某節點下的資料筆數</span> | |||
*# 會將編碼後的中文還原成可讀 | |||
Other tools | |||
* [https://www.planetoid.info/tools/convert_javascript_array_to_php_array/ Convert JavaScript Array to PHP Array] | |||
Editor plugins | Editor plugins | ||
* [http://sourceforge.net/apps/mediawiki/notepad-plus/index.php?title=Plugin_Central#J JSON Viewer][http://nppjsonviewer.sourceforge.net/] for Notepad++ | * [http://sourceforge.net/apps/mediawiki/notepad-plus/index.php?title=Plugin_Central#J JSON Viewer] [http://nppjsonviewer.sourceforge.net/] for Notepad++ | ||
* [http://www.camdemy.com/media/7427 Sublime Text 套件介紹(四):Pretty JSON]{{access | date=2014-03-11}} | |||
* [http:// | |||
== compression tools == | == Performance issue: compression tools, using CDN == | ||
[[Speed up websites#JavaScript part]] | |||
== troubleshooting steps == | == troubleshooting steps == | ||
| Line 67: | Line 157: | ||
# [[Check Browser Compatibility | Checking browser compatibility]] | # [[Check Browser Compatibility | Checking browser compatibility]] | ||
# Javascript location: (1)JavaScript in <head> or <body> [http://api.jquery.com/click/ ex: .click()], (2)JavaScript in <input> tag or other DOM elements' tag ex: <button type="button" onclick="myFunction()" id="buttonId">Try it</button><ref>[http://www.w3schools.com/js/js_howto.asp JavaScript How To]</ref> | # Javascript location: (1)JavaScript in <head> or <body> [http://api.jquery.com/click/ ex: .click()], (2)JavaScript in <input> tag or other DOM elements' tag ex: <button type="button" onclick="myFunction()" id="buttonId">Try it</button><ref>[http://www.w3schools.com/js/js_howto.asp JavaScript How To]</ref> | ||
=== jsfiddle:Uncaught ReferenceError: function_name is not defined === | |||
message: Uncaught ReferenceError: function_name is not defined | |||
* possibile solution: settings - '''No wrap - in <body>''' or '''No wrap - in <head>''' | |||
more on [[Javascript debug]] | more on [[Javascript debug]] | ||
== | == References == | ||
<references/> | <references/> | ||
== Further reading == | |||
# [http://technet.microsoft.com/library/ee198686.aspx Microsoft - Scripting Guidelines] | |||
[[Category:Programming]] | [[Category:Programming]] | ||
[[Category:Web_Dev]] | [[Category:Web_Dev]] | ||
[[Category:Javascript]] | [[Category:Javascript]] | ||
[[Category: | [[Category:Design]] | ||