Tomcat 설정시 한개의 프로젝트에 여러 개의 도메인을 설정하고 싶을 때...


Tomcat 폴더에 conf 폴더 안에 Server.xml 파일을 열어서

Host 태그에 Alias를 추가해주면 된다.



<Host name="localhost"  appBase="webapps" unpackWARs="true" autoDeploy="true">

<Alias>a.test.co.kr</Alias>

<Alias>b.test.co.kr</Alias>

      </Host>



모르면 어렵고

알면 쉽다.




* 참고 : http://tomcat.apache.org/tomcat-8.0-doc/config/host.html#Host_Name_Aliases






원인  :  ASP.Net was not completely installed with IIS

해결 :    %windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe -i

32bit 인 경우

%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i

 



[출처] : http://stackoverflow.com/questions/6846544/how-to-fix-handler-pagehandlerfactory-integrated-has-a-bad-module-managedpip

 

 

import java.math.BigDecimal;

public class Main {
    public static void main(String[] args) {
        BigDecimal decimalA = new BigDecimal("20");
        BigDecimal decimalB = new BigDecimal("10");
        
        decimalA = decimalA.add(decimalB);
        System.out.println("decimalA = " + decimalA);    //더하기

        decimalA = decimalA.multiply(decimalB);
        System.out.println("decimalA = " + decimalA);    // 곱하기

        decimalA = decimalA.subtract(decimalB);
        System.out.println("decimalA = " + decimalA);    // 빼기

        decimalA = decimalA.divide(decimalB);
        System.out.println("decimalA = " + decimalA);    // 나누기

        decimalA = decimalA.pow(2);
        System.out.println("decimalA = " + decimalA);    // 제곱

        decimalA = decimalA.negate();
        System.out.println("decimalA = " + decimalA);    // 부호 변경
    }
}

 

실행결과 >

decimalA = 30
decimalA = 300
decimalA = 290
decimalA = 29
decimalA = 841
decimalA = -841

 

 

출처 : http://www.java2s.com/Code/Java/Data-Type/DomathoperationforBigDecimal.htm

 

 

File.Delete(strFilePath);  <-- 요기서 에러 났다.

 

[UnauthorizedAccessException: ~~ 경로에 대한 액세스가 거부되었습니다.]

이런 에러..

 

MSDN 찾아보면

  http://msdn.microsoft.com/ko-kr/library/system.io.file.delete(v=vs.90).aspx

 

UnauthorizedAccessException 에러는

 

UnauthorizedAccessException

호출자에게 필요한 권한이 없는 경우

- 또는 -

path가 디렉터리인 경우

- 또는 -

path에서 읽기 전용 파일을 지정한 경우

UnauthorizedAccessException

호출자에게 필요한 권한이 없는 경우

- 또는 -

path가 디렉터리인 경우

- 또는 -

path에서 읽기 전용 파일을 지정한 경우

UnauthorizedAccessException

호출자에게 필요한 권한이 없는 경우

- 또는 -

path가 디렉터리인 경우

- 또는 -

path에서 읽기 전용 파일을 지정한 경우

호출자에게 필요한 권한이 없는 경우

- 또는 -

path가 디렉터리인 경우

- 또는 -

path에서 읽기 전용 파일을 지정한 경우

 

 이런 경우에 발생한단다.

 

원인을 알았으니 해결해본다.

 

먼저 권한 문제 인거 같아 권한을 모두줘본다. Everyone 모든 권한을 줘도 같은 에러가 난다.

그럼 권한 문제는 아니고, path는 파일이 확실하고..

그렇다. 원인은 바로 읽기 전용 파일이어서 발생한 에러였다. 이거 찾아내는데 3시간 걸렸다...OTL

 

그럼 읽기 전용일때 해결법은? 간단하다...

 

FileInfo file = new FileInfo(strFilePath);
file.IsReadOnly = false;
File.Delete(strFilePath);

 

읽기전용을 false로 바꾸고 지우면 된다.

 

JVM메모리는 Java Heap space, Permenant Generation 이 존재합니다.

PermGen space는 JVM에서 관리하는 메모리 영역중 하나입니다.

Heap space는 프로그램 실행 도중 생성삭제 되는 Garbage-collected(필요없는경우 제거)입니다.

Permenant는 프로그램이 종료될때 까지 메모리를 차지하는 공간입니다.

Heap은 동적으로 메모리를 사용하게 되며 Permenant는 Class Names, internalized strings, Object등이 들어가며

PermGen도 이곳에 해당합니다.

 

java.lang.OutOfMemoryError: PermGen space의 해결책은 이클립스 실행시 메모리를 늘려주면 됩니다.

기본은 20M로 설정이 됩니다.

 

1. eclipse.ini 파일 설정.

    javaw -vmargs -Xverify:none -XX:+UseParallelGC -XX:PermSize=64M -XX:MaxPermSize=128M -XX:MaxNewSize=32M -XX:NewSize=32M -Xmx512M

 

2. eclipse실행 파일.

   C:\eclipse\eclipse-jee-ganymede-SR1-win32\eclipse\eclipse.exe -vm "C:\Program Files\Java\jre6\bin\javaw" -vmargs -XX:MaxPermSize=128m -Xms128m -Xmx512m

 

3. eclipse의 Java VM 옵션 용량 수정.

   eclipse 사용시 : Window > Preferences > java > installend JREs > 사용중인 JRE선택 > edit > Default VM Arguments

   기본방식

  -XX:MaxPermSize=Permanent Generation의 최대용량(기본 용량은 64MB)

   변경설정

  -XX:MaxPermSize=128m



-출처 : Length 카페 ( http://blog.naver.com/onepromise01/150090741047 )


1. JQuery checkbox 컨트롤 

 

1) checkbox checked 여부

id 인 경우 : $('input:checkbox [ id="checkbox_id" ]').is(":checked") == true;

name인 경우 : $('input:checkbox [ name="checkbox_name"]').is(":checked") == true;

 

2) checkbox 전체 갯수 : $('input:checkbox [ name="checkbox_name"]').length

3) checkbox 선택된 갯수 : $('input:checkbox [ name="checkbox_name"]:checked').length

 

4) checkbox 전체 순회 하며 checked 처리

$('input:checkbox [ name="checkbox_name"]').each(function() {

        this.checked = true;

        // if ( $(this).is(":checked") ) {

        //          처리로직;         

        // }

});

 

5) checkbox value 값 가져오기

$('input:checkbox [ id="checkbox_id" ]').val();

 

6) checkbox checked 처리하기

$('input:checkbox [ id="checkbox_id"]').attr("checked", true);

 

 

 

2. JQuery radio 버튼 컨트롤

 

1) 선택된 라디오 버튼 값 가져오기

$('input:radio[name="certWay"]').val();

$(':radio[name="radio"]:checked').val();

 

 

3. JQuery select box 컨트롤

 

1) selelct box 내용 가져오기

$('#select_box > option:selected').val();

 

2) 값 설정

$('#select_box > option[value=지정값]').attr('selected', 'true');

 

3) select disabled

$('#select_box').attr('disabled', 'true');





[출처] http://freesemo.blog.me/100156130216



 

 

 

날 코딩시 색상값을 몰라 난감할 때가 있다.

그럴 땐 이걸 참고하면 된다. 

 

93DAFF

#98DFFF

#9DE4FF

#A2E9FF

#A7EEFF

#ACF3FF

#B0F7FF

#B4FBFF

#B9FFFF

#C0FFFF

#87CEFA

#91D8FA

#A5D8FA

#AFDDFA

#B9E2FA

#C3E7FA

#CDECFA

#D7F1FA

#E1F6FA

#EBFBFF

#00BFFF

#0AC9FF

#14D3FF

#1EDDFF

#28E7FF

#32F1FF

#3CFBFF

#46FFFF

#96FFFF

#C8FFFF

#00A5FF

#00AFFF

#00B9FF

#00C3FF

#00CDFF

#00D7FF

#00E1FF

#00EBFF

#00F5FF

#00FFFF

#1EA4FF

#28AEFF

#32B8FF

#3CC2FF

#46CCFF

#50D6FF

#5AE0FF

#6EE0FF

#6EEAFF

#78F3FF

#1E90FF

#289AFF

#32A4FF

#3CAEFF

#46B8FF

#50C2FF

#5ACCFF

#64D6FF

#6EE0FF

#78EAFF

#96A5FF

#A0AFFF

#AAB9FF

#B4C3FF

#BECDFF

#C8D7FF

#D2E1FF

#DCEBFF

#E8F5FF

#F4FFFF

#86A5FF

#90AFFF

#9AB9FF

#A4C3FF

#AECDFF

#B8D7FF

#CCE1FF

#E0EBFF

#EBF5FF

#F9FFFF

#6495ED

#6E9FED

#78A9ED

#82B3ED

#8CBDED

#96C7ED

#A0D1F7

#AADBFF

#B4E5FF

#BEEFFF

#0078FF

#0A82FF

#148CFF

#1E96FF

#28A0FF

#32AAFF

#3CB4FF

#46BEFF

#50C8FF

#5AD2FF

#0064FF

#0A6EFF

#1478FF

#1E82FF

#288CFF

#3296FF

#3CA0FF

#46AAFF

#50B4FF

#5ABEFF

#0000FF

#3232FF

#5050FF

#646EFF

#6478FF

#6482FF

#648CFF

#6496FF

#64A0FF

#64AAFF

#4169E1

#4B73E1

#557DE1

#5F87E1

#6991E1

#739BE1

#7DA5E1

#87AFEB

#91B9F5

#9BC3FF

#0064CD

#0A6ECD

#1478CD

#1E82CD

#288CD2

#3296D7

#3CA0E1

#46AAEB

#50B4F5

#5ABEF5

#5A5AFF

#6464FF

#6E6EFF

#7878FF

#8282FF

#8C8CFF

#A0A0FF

#B4B4FF

#C8C8FF

#D2D2FF

#7B68EE

#8572EE

#8F7CEE

#9986EE

#A390EE

#AD9AEE

#B7A4EE

#C1AEEE

#CBB8EE

#D5C2EE

#6A5ACD

#7E6ECD

#8878CD

#9282CD

#9C8CCD

#A696CD

#B0A0CD

#BAAAD7

#C4B4E1

#CEBEE1

#0000CD

#2828CD

#4646CD

#6464CD

#6E6ED7

#7878E1

#8282EB

#8C8CF5

#9696FF

#A0A0FF

#00008C

#14148C

#28288C

#3C3C8C

#50508C

#646496

#7878AA

#8C8CBE

#A0A0C8

#B4B4DC

#483D8B

#52478B

#5C518B

#665B8B

#70658B

#7A6F95

#84799F

#8E83A9

#988DB3

#A297BD

#000069

#1E3269

#323C73

#3C467D

#3C5087

#3C5A91

#46649B

#506EA5

#5A78AF

#6482B9

#3DFF92

#47FF9C

#51FFA6

#5BFFB0

#65FFBA

#6FFFC4

#79FFCE

#75FFCA

#7AFFCF

#7FFFD4

#55EE94

#5FEE9E

#69EEA8

#73EEB2

#7DEEBC

#87EEC6

#91F8D0

#9BFFDA

#A5FFE4

#AFFFEE

#66CDAA

#70D2B4

#7AD7BE

#84DCC8

#8EE1D2

#98EBDC

#9DF0E1

#A2F5E6

#A7FAEB

#ACFFEF

#AAEBAA

#B4F0B4

#BEF5BE

#C8FAC8

#D2FFD2

#DCFFDC

#E1FFE1

#E6FFE6

#EBFFEB

#F0FFF0

#80E12A

#8AE634

#94EB3E

#9EF048

#A8F552

#B2FA5C

#BCFF66

#C1FF6B

#C6FF70

#CBFF75

#52E252

#5CE75C

#66EC66

#70F170

#7AF67A

#84FB84

#89FB89

#8EFB8E

#93FB93

#98FB98

#64CD3C

#6ED746

#78E150

#82EB5A

#8CF064

#96F56E

#9BFA73

#A0FA78

#A5FA7D

#AAFA82

#13C7A3

#18CCA8

#1DD1AD

#22D6B2

#27DBB7

#2CE0BC

#31E0C1

#36E0C6

#3BE0CB

#40E0D0

#46B4B4

#50BEBE

#5AC8C8

#64D2D2

#6EDCDC

#73E1E1

#78E6E6

#7DEBEB

#82F0F0

#87F5F5

#20B2AA

#2ABCB4

#34C6BE

#3ED0C8

#48DAD2

#52E4DC

#57E9E1

#5CEEE6

#61F3EB

#66F8F0

#5F9EA0

#69A8AA

#73B2B4

#7DBCBE

#87C6C8

#91D0D2

#96D5D7

#9BDADC

#A0DFE1

#A5E3E6

#3CB371

#46BD7B

#50C785

#5AD18F

#64DB99

#6EE5A3

#73EAA8

#78EFAD

#7DF4B2

#82F9B7

#2E8B57

#389561

#429F6B

#4CA975

#56B37F

#60BD89

#65C28E

#6AC793

#6FCC98

#74D19D

#228B22

#2C952C

#369F36

#40A940

#4AB34A

#54BD54

#5EC75E

#63CC63

#68D168

#6DD66D

#497649

#538053

#5D8A5D

#679467

#719E71

#7BA87B

#80AD80

#85B285

#8AB78A

#8FBC8F

#006400

#0A6E0A

#147814

#1E821E

#288C28

#329632

#3CA03C

#41A541

#46AA46

#4BAF4B

#008C8C

#0A9696

#14A0A0

#1EAAAA

#28B4B4

#32BEBE

#37C3C3

#3CC8C8

#41CDCD

#46D2D2

#008080

#0A8A8A

#149494

#1E9E9E

#28A8A8

#32B2B2

#37B7B7

#3CBCBC

#41C1C1

#46C6C6

#FFB6C1

#FFBBC6

#FFC0CB

#FFC5D0

#FFCAD5

#FFCFDA

#FFD4DF

#FFD9E4

#FFDEE9

#FFE3EE

#FFAAAF

#FFB4B9

#FFBEC3

#FFC8CD

#FFD2D7

#FFDCE1

#FFE1E6

#FFE6EB

#FFEBF0

#FFF0F5

#FF9E9B

#FFA8A5

#FFB2AF

#FFBCB9

#FFC6C3

#FFD0CD

#FFD5D2

#FFDAD7

#FFDFDC

#FFE4E1

#FF7A85

#FF848F

#FF8E99

#FF98A3

#FFA2AD

#FFACB7

#FFB1BC

#FFB6C1

#FFBBC6

#FFC0CB

#FF5675

#FF607F

#FF6A89

#FF7493

#FF7E9D

#FF88A7

#FF92B1

#FF9CBB

#FFA6C5

#FFB0CF

#FF82FF

#FF8CFF

#FF96FF

#FFA0FF

#FFAAFF

#FFB4FF

#FFBEFF

#FFC8FF

#FFD2FF

#FFDCFF

#FF7DB4

#FF87BE

#FF91C8

#FF9BD2

#FFA5DC

#FFAFE6

#FFB4EB

#FFB9F0

#FFBEF5

#FFC3FA

#FF69B4

#FF73BE

#FF7DC8

#FF87D2

#FF91DC

#FF9BE6

#FFA5F0

#FFAAF5

#FFAFFA

#FFB4FF

#FF1493

#FF1E9D

#FF28A7

#FF32B1

#FF3CBB

#FF46C5

#FF50CF

#FF5AD9

#FF64E3

#FF6EED

#DB7093

#DB7A9D

#DB84A7

#E08EB1

#E598BB

#EAA2C5

#EAB1D4

#EFACCF

#F4BBDE

#F4B6D9

#D7567F

#DC6089

#E16A93

#E6749D

#EB7EA7

#F088B1

#F592BB

#FA9CC5

#FFA6CF

#FFB0D9

#C71585

#C71F8F

#C73399

#C73DA3

#CC47AD

#D151B7

#D65BC1

#E065CB

#EA6FD5

#F479DF

#CD1039

#CD1F48

#CD2E57

#CD3861

#CD426B

#D24C75

#D7567F

#DC6089

#E16A93

#E6749D

#B9062F

#B91A4D

#BE2457

#C32E61

#C8386B

#CD4275

#D24C7F

#D75689

#DC6093

#E16A9D

#FAEB78

#FAF082

#FAF58C

#FAFA96

#FAFAA0

#FAFAAA

#FAFAB4

#FAFABE

#FAFAD2

#FAFAD2

#FFDC3C

#FFE146

#FFE650

#FFEB5A

#FFF064

#FFF56E

#FFFA78

#FFFA82

#FFFF8C

#FFFF96

#FFC81E

#FFD228

#FFD732

#FFDC3C

#FFE146

#FFE650

#FFEB5A

#FFF064

#FFF56E

#FFF978

#FFB400

#FFBE0A

#FFC314

#FFC81E

#FFCD28

#FFD232

#FFD73C

#FFDC46

#FFE150

#FFE65A

#FDCD8C

#FDD296

#FDD7A0

#FDDCAA

#FDE1B4

#FDE6BE

#FDEBC8

#FDF5D2

#FDF5DC

#FDF5E6

#FAC87D

#FACD87

#FAD291

#FAD79B

#FADCA5

#FAE1AF

#FAE6B9

#FAEBC3

#FAEBCD

#FAEBD7

#FFA500

#FFAF0A

#FFB914

#FFC31E

#FFCD28

#FFD732

#FFDC37

#FFE13C

#FFE641

#FFEB46

#FF9100

#FF9B00

#FFA500

#FFAF00

#FFB900

#FFC300

#FFC800

#FFCD00

#FFD200

#FFD700

#FF8200

#FF8C0A

#FF9614

#FFA01E

#FFAA28

#FFB432

#FFB937

#FFBE3C

#FFC341

#FFC846

#FFA98F

#FFB399

#FFBDA3

#FFC7AD

#FFD1B7

#FFDBC1

#FFE0C6

#FFE5CB

#FFEAD0

#FFEFD5

#FFA374

#FFAD7E

#FFB788

#FFC192

#FFCB9C

#FFD0A1

#FFD5A6

#FFDAAB

#FFDFB0

#FFE4B5

#FF9473

#FF9E7D

#FFA887

#FFB291

#FFBC9B

#FFC6A5

#FFD0AF

#FFD0AF

#FFD5B4

#FFDAB9

#FF7F50

#FF895A

#FF9364

#FF9D6E

#FFA778

#FFB182

#FFBB8C

#FFC091

#FFC596

#FFCA9B

#CD853F

#CD8F49

#D29953

#D7A35D

#DCAD67

#E1B771

#E6C17B

#EBC680

#F0CB85

#F5D08A

#D2691E

#D27328

#D27D32

#D7873C

#DC9146

#E19B50

#E6A55A

#EBAA5F

#EBAF64

#F0B469

#AE5E1A

#B86824

#C2722E

#CC7C38

#D68642

#E0904C

#E59551

#EA9A56

#EF9F5B

#F4A460

#8B4513

#8B4F1D

#8B5927

#8B6331

#906D3B

#957745

#9F814F

#A48654

#A98B59

#AE905E

#FF9696

#FFA0A0

#FFAAAA

#FFB4B4

#FFBEBE

#FFC8C8

#FFD2D2

#FFDCDC

#FFE6E6

#FFF0F0

#F08080

#F08A8A

#F09494

#F59E9E

#FAA8A8

#FAB2B2

#FAB7B7

#FABCBC

#FAC1C1

#FAC6C6

#F56E6E

#F57878

#F58282

#F58C8C

#F59696

#F5A0A0

#F5AAAA

#FAB4B4

#FABEBE

#FAC8C8

#F06464

#F06E6E

#F07878

#F08282

#F08C8C

#F09696

#F4A0A0

#F4AAAA

#F4B4B4

#FEBEBE

#FF0000

#FF3232

#FF4646

#FF5050

#FF5A5A

#FF6464

#FF6E6E

#FF7878

#FF8282

#FF8C8C

#EB0000

#EB3232

#EB4646

#EB5050

#EB5A5A

#EB6464

#F06E6E

#F57878

#FA8282

#FA8C8C

#CD0000

#CD3C3C

#CD4646

#CD5050

#D25A5A

#D76464

#DC6E6E

#E17878

#E68282

#EB8C8C

#CD5C5C

#CD6666

#CD7070

#CD7A7A

#D28484

#D78E8E

#DC9898

#E6A2A2

#EBACAC

#F0B6B6

#B90000

#B93232

#B93C3C

#B94646

#B95050

#BE5A5A

#C35F5F

#C86464

#CD6969

#D26E6E

#B22222

#B24040

#B24A4A

#B25454

#B75E5E

#BC6868

#C17272

#CB7776

#CB7C7C

#D08180

#A52A2A

#AA3E3E

#AF4848

#B45252

#BE5C5C

#C36666

#CD7070

#CD7A7A

#D28484

#D78E8E

#800000

#803232

#853C3C

#8F4646

#945050

#9E5A5A

#A36464

#AD6E6E

#B77878

#C18282

#CD853F

#CD8B45

#CD904A

#D2954F

#D29A54

#D79F59

#D7A45E

#E1A963

#E1AE68

#E6B36D

#DB631F

#E56D29

#E57733

#EA813D

#EF8B47

#EF904C

#F49551

#F49A56

#F49F5B

#F4A460

#D2691E

#D27328

#D77D32

#D7873C

#DC9146

#E19B50

#E6A055

#EBA55A

#F0AA5F

#F5AF64

#A0522D

#A05C37

#A06641

#A5704B

#AA7A55

#B4845F

#B98E69

#C39873

#CDA27D

#D7AC87

#8B4513

#8B4F1D

#8B5927

#8B6331

#906D3B

#9A7745

#A4814F

#AE8B59

#B89563

#C29F6D

#DA70D6

#DF75DB

#E47AE0

#E97FE5

#EE84EA

#F389EF

#F88EF4

#FD93F9

#FF98FE

#FF9DFF

#BA55D3

#BF5AD8

#C45FDD

#C964E2

#CE69E7

#D36EEC

#D873F1

#DD78F6

#E27DFB

#E782FF

#9932CC

#9E37D1

#A33CD6

#A841DB

#AD46E0

#B24BE5

#B750EA

#BC55EF

#C15AF4

#C65FF9

#9400D3

#9905D8

#9E0ADD

#A30FE2

#A814E7

#AD19EC

#B21EF1

#B723F6

#BC28FB

#C12DFF

#942894

#9E329E

#A83CA8

#B246B2

#BC50BC

#C65AC6

#D064D0

#DA6EDA

#E478E4

#EE82EE

#8c008c

#960a96

#a014a0

#aa1eaa

#b428b4

#be32be

#c83cc8

#d246d2

#dc50dc

#e65ae6

#800080

#8a0a8a

#941494

#9e1e9e

#a828a8

#b232b2

#bc3cbc

#c646c6

#d050d0

#da5ada

#834683

#8d508d

#975a97

#a164a1

#ab6eab

#b578b5

#bf82bf

#c98cc9

#d396d3

#dda0dd

#828282

#8c8c8c

#969696

#a0a0a0

#aaaaaa

#b4b4b4

#bebebe

#c8c8c8

#d2d2d2

#dcdcdc

#000000

#282828

#323232

#3c3c3c

#464646

#505050

#5a5a5a

#646464

#6e6e6e

#787878

알고있으면 유용한 포토샵 색상표

[출처] 포토샵 색상표|작성자 이멍멍

 

 

 

[원본] http://api.jquery.com/jQuery.post/

 

Jquery 를 이용해 ajax 사용하기 간단하네...

 

jQuery.post( url [, data] [, success(data, textStatus, jqXHR)] [, dataType] ) Returns: jqXHR

Description: Load data from the server using a HTTP POST request.

  • version added: 1.0jQuery.post( url [, data] [, success(data, textStatus, jqXHR)] [, dataType] )

    urlA string containing the URL to which the request is sent.

    dataA map or string that is sent to the server with the request.

    success(data, textStatus, jqXHR)A callback function that is executed if the request succeeds.

    dataTypeThe type of data expected from the server. Default: Intelligent Guess (xml, json, script, text, html).

This is a shorthand Ajax function, which is equivalent to:

$.ajax({
  type: 'POST',
  url: url,
  data: data,
  success: success,
  dataType: dataType
});

 

The success callback function is passed the returned data, which will be an XML root element or a text string depending on the MIME type of the response. It is also passed the text status of the response.

As of jQuery 1.5, the success callback function is also passed a "jqXHR" object (in jQuery 1.4, it was passed the XMLHttpRequest object).

Most implementations will specify a success handler:

$.post('ajax/test.html', function(data) {
  $('.result').html(data);
});

 

This example fetches the requested HTML snippet and inserts it on the page.

Pages fetched with POST are never cached, so the cache and ifModified options in jQuery.ajaxSetup() have no effect on these requests.

The jqXHR Object

As of jQuery 1.5, all of jQuery's Ajax methods return a superset of the XMLHTTPRequest object. This jQuery XHR object, or "jqXHR," returned by $.post() implements the Promise interface, giving it all the properties, methods, and behavior of a Promise (see Deferred object for more information). For convenience and consistency with the callback names used by $.ajax(), it provides .error(), .success(), and .complete() methods. These methods take a function argument that is called when the request terminates, and the function receives the same arguments as the correspondingly-named $.ajax() callback.

The Promise interface in jQuery 1.5 also allows jQuery's Ajax methods, including $.post(), to chain multiple .success(), .complete(), and .error() callbacks on a single request, and even to assign these callbacks after the request may have completed. If the request is already complete, the callback is fired immediately.

// Assign handlers immediately after making the request,
    // and remember the jqxhr object for this request
    var jqxhr = $.post("example.php", function() {
      alert("success");
    })
    .success(function() { alert("second success"); })
    .error(function() { alert("error"); })
    .complete(function() { alert("complete"); });

    // perform other work here ...

    // Set another completion function for the request above
    jqxhr.complete(function(){ alert("second complete"); });

Examples:

Example: Request the test.php page, but ignore the return results.

$.post("test.php");

Example: Request the test.php page and send some additional data along (while still ignoring the return results).

$.post("test.php", { name: "John", time: "2pm" } );

Example: pass arrays of data to the server (while still ignoring the return results).

$.post("test.php", { 'choices[]': ["Jon", "Susan"] });

Example: send form data using ajax requests

$.post("test.php", $("#testform").serialize());

Example: Alert out the results from requesting test.php (HTML or XML, depending on what was returned).

$.post("test.php", function(data) {
alert
("Data Loaded: " + data);
});

Example: Alert out the results from requesting test.php with an additional payload of data (HTML or XML, depending on what was returned).

$.post("test.php", { name: "John", time: "2pm" },
function(data) {
alert
("Data Loaded: " + data);
});

Example: Gets the test.php page content, store it in a XMLHttpResponse object and applies the process() JavaScript function.

$.post("test.php", { name: "John", time: "2pm" },
function(data) {
process
(data);
},
"xml"
);

Example: Posts to the test.php page and gets contents which has been returned in json format (<?php echo json_encode(array("name"=>"John","time"=>"2pm")); ?>).

$.post("test.php", { "func": "getNameAndTime" },
function(data){
console
.log(data.name); // John
console
.log(data.time); // 2pm
}, "json");

Example: Post a form using ajax and put results in a div

<!DOCTYPE html>
<html>
<head>
<script src="http://code.jquery.com/jquery-latest.js"></script>
</head>
<body>
<form action="/" id="searchForm">
<input type="text" name="s" placeholder="Search..." />
<input type="submit" value="Search" />
</form>
<!-- the result of the search will be rendered inside this div -->
<div id="result"></div>

<script>
/* attach a submit handler to the form */
$
("#searchForm").submit(function(event) {

/* stop form from submitting normally */
event
.preventDefault();

/* get some values from elements on the page: */
var $form = $( this ),
term
= $form.find( 'input[name="s"]' ).val(),
url
= $form.attr( 'action' );

/* Send the data using post and put the results in a div */
$
.post( url, { s: term },
function( data ) {
var content = $( data ).find( '#content' );
$
( "#result" ).empty().append( content );
}
);
});
</script>

</body>
</html>

 

request URL 에 + 문자가 들어간 경우

 

HTTP 오류 404.11 - Not Found

이중 이스케이프 시퀀스가 포함된 요청을 거부하도록 요청 필터링 모듈이 구성되어 있습니다.

이런 오류가 발생한다.

원인은..

 

HTTP 요청을 웹 서버를 이중 이스케이프 시퀀스가 있습니다. 그러나 웹 서버를 이중 이스케이프 시퀀스 거부 되도록 요청 필터링 기능이 구성 됩니다.

 

해결방법은...

  1. 시작, 검색 시작 상자에 메모장프로그램 목록에서 메모장을 마우스 오른쪽 단추로 누른 다음 관리자 권한으로 실행. 관리자 암호나 확인을 묻는 메시지가 나타나면 암호를 입력하거나 계속 을 누릅니다.
  2. 파일 메뉴에서 열기 를 누릅니다. 그리고 파일 이름 상자에 %windir%\System32\inetsrv\config\applicationHost.config 입력하고 열기 를 클릭하십시오.
  3. ApplicationHost.config 파일을 requestFiltering XML 요소를 찾습니다.
  4. allowDoubleEscaping 속성 값을 True 로 변경하십시오. 이렇게 하려면 다음 코드 예제에서는 유사한 코드를 사용합니다.
    <requestFiltering allowDoubleEscaping="true">

  5. 파일 메뉴에서 저장 을 클릭하십시오.
  6. 메모장을 종료하십시오.

[참고] http://support.microsoft.com/kb/942076/ko

 

 

 

 

<script type="text/javascript">

if (navigator.userAgent.match(/iPhone|iPod|Android|Windows CE|BlackBerry|Symbian|Windows Phone|webOS|Opera Mini|Opera Mobi|POLARIS|IEMobile|lgtelecom|nokia|SonyEricsson/i) != null
|| navigator.userAgent.match(/LG|SAMSUNG|Samsung/) != null)
{
alert('모바일접속');
}

</script>

+ Recent posts