==[[jQuery Tips]]==[[jQuery]] | [[JavaScript]]|
*リファレンス http://docs.jquery.com/Main_Page
*リファレンス(日本語) http://semooh.jp/jquery/
*入門 http://www.openspc2.org/[[JavaScript]]/Ajax/jQuery_study/ver1.3.1/index.html
==[[ロジック]]==
===文字列操作===
====トリミング====
==配列==
===配列に値が存在するか調べる===
*http://api.jquery.com/[[jQuery]].inArray
*存在しない場合、-1
$.inArray("val",array);
===配列を変換===
*[[jQuery]].map
var newArray = $.map(array, function(val,index){
return parseInt(val.trim());
});
==[[Ajax]]=====エラーの場合、レスポンスボディ(たとえばXMLたとえば[[XML]])は jqXHR.responseText から取得===
$.ajax({
url:url,
success: function(data, textStatus, jqXHRjqXH[[R]]) {
:
},
error:function(jqXHRjqXH[[R]], textStatus, errorThrown) { var xml = jqXHRjqXH[[R]].responseText;
if (xml != null) {
alert(xml);
:
<blockquote>ただし、XMLが文字列として取得されるので、jQuery ただし、XMLが文字列として取得されるので、[[jQuery]] でXMLとして利用するには、DOMへの変換が必要</blockquote>=====XML文字列をDOMに変換するライブラリ[[XML]]文字列をDOMに変換するライブラリ=====
*http://outwestmedia.com/jquery-plugins/xmldom/
===よくわからないHTTPステータスコードでエラーとなることがあるよくわからない[[HTTP]]ステータスコードでエラーとなることがある===
*WinInet のエラーの可能性
http://support.microsoft.com/kb/193625
12029 ERROR_INTERNET_CANNOT_CONNECTE[[R]][[R]]O[[R]]_INTE[[R]]NET_CANNOT_CONNECT
he attempt to connect to the server failed.
===Httpリクエストヘッダーを設定する===
*http://api.jquery.com/[[jQuery]].ajax/
*beforeSendを利用する
$.ajaxSetup({
beforeSend: function(xhr) {
xhr.setRequestHeadersetRequest[[Header]]("If-Modified-Since", "Thu, 01 Jun 1970 00:00:00 GMT");
}
});
});
$("#loading").show();
==[[DOM]]=====jQueryオブジェクトからDOMオブジェクトを得る[[jQuery]]オブジェクトからDOMオブジェクトを得る===
var domObj = jObj.get(0);
==[[HTML]]==
===選択されたラジオボタンの value を取得する。===
var sel_val = $("input:radio[@name='radio_button_name']:checked").val();
var first_h2 = $("h2").first();
===IEで動的にセレクトボックスの項目を変更できない[[IE]]で動的にセレクトボックスの項目を変更できない===
=====IEで正しく動作しない[[IE]]で正しく動作しない=====
$("option","#selectboxId").each(function(){
if ($(this).val() == targetCode) {
});
=====DOMを操作する[[DOM]]を操作する(IEでもOK)=====
var selectBox = document.getElementById("selectboxId");
for (var i=0; i<selectBox.options.length; i++) {
}
}
==[[HTML]](テーブル)==
===選択された行のセルのテキストを取得===
var tr = $("<tr>")
*'q'というidの value に test を設定
$('#q').attr('value', 'test');
// ORO[[R]]
$('#q').val('test')
===テーブルの操作===
=====Script=====
// $.getJSON get[[JSON]] callback
function reload_date(json) {
if ($("#calc_expr_table tbody").length > 0) {
);
}
=====[[HTML]]=====
<table id="calc_expr_table"></table>
==[[CSS]]==
===クラスの追加===
*num_value id の要素のスタイルクラスを num_field に設定
$("#num_value").addClass("num_field");
==[[XML]]==
===XMLのタグ名を取得する[[XML]]のタグ名を取得する===
*http://blog.livedoor.jp/luna666luna/archives/3447449.html
$(this).get(0).tagName;
});
==[[プラグイン]]==
*http://plugins.jquery.com/
$("#num_field").format({format:"#,###.00", locale:"us"});
===角を丸くする [[jQuery ]] Corner===
*http://malsup.com/jquery/corner/
$("#message_area").corner();
*http://d.hatena.ne.jp/cyokodog/20080720/1216569757
===[[Cookie]]===*http://archive.plugins.jquery.com/project/[[Cookie]]
====有効期限を設定する====
var serviveDays ser[[vi]]veDays = 30;
var date=new Date();
date.setTime(date.getTime()+(serviveDaysser[[vi]]veDays*24*60*60*1000));
$.cookie("key_foo", "value_bar", {expires:date});
==API Memo==
===html()===
*innerHTML inner[[HTML]] と同じ
===addClass(class), removeClass(class)===
*指定した要素にCSSクラスを追加指定した要素に[[CSS]]クラスを追加/削除
===parent(expr),children(expr)===
*parent : 対象の要素の親(先祖をさかのぼる)を取得
*children : 対象の要素の子(直下の子供のみ)を取得