2012-04-23 6 views
1

내 HTML에서 onclick 함수를 사용하고 있습니다 (메서드가 아니라 HTML 단추 onclick 이벤트의 javascript 코드 자체).중괄호없이 if 문에 다중 문

중괄호로 묶지 않은 IF 문 다음에 한 줄에 2 개의 명령문을 어떻게 추가합니까?

내가 좋아하는 뭔가를하고 싶은이

onclick="javascript: if (days.value == '') alert('Please select at least 1 day to schedule this report') && return false;" 

내가 PHP의 문자열에 중괄호를 출력에 대한 정보를 찾을 수 없기 때문에 두 개의 문을 둘러싸는 중괄호를 사용할 수 없습니다 (내가 할 경우, 출력은

내 PHP는 다음과 같습니다) 첫 번째 중괄호 후 중지 :

$content["PREPEND"].= " onclick=\"javascript: if (days.value == '') alert('Please select at least 1 day to schedule this report') && return false; \""; 

나는 &를 사용하여 시도,하지만 그 doesnt 작동합니다. 어떤 조언을 부탁드립니다!

+0

거기에 어떤 구체적인 이유가 클릭 방법을 만들지 않아 ?? 왜냐하면 당신이 코드를 망치고 있기 때문입니다. –

+0

따옴표 붙은 PHP 문자열 내에서이 줄이 생성됩니까? – freefaller

+0

잠시 동안 이걸 남겨 두어야했는데, 그렇지 않은 경우 더 심한 말을하기가 어려웠습니다. 왜 내가 말할 수있는 PHP에서 이유는 당신이 사용할 수없는 이유는 {및} 문자. 당신이 얻고있는 브라우저 소스의 정확한 출력을 보여주는 질문을 업데이트 할 수 있습니까?내 직감은 템플릿에서 문자열을 구문 분석하고 대괄호로 무엇인가를하려한다는 것입니다. – freefaller

답변

0

우선 그 나쁜 습관입니다. 그러나 거짓을 반환하는 경우 중복을 추가 할 수 있습니다.

2

자바 스크립트 코드는 PHP 코드와 아무런 관련이 없습니다. 원하는 중괄호를 사용할 수 있습니다.

중괄호가 무엇이든간에 문제가 발생하면 잘못된 방향으로 넣을뿐입니다. 다음 중괄호를 수정하려면을 사용하는 것이 좋습니다. 대신 추악한 방법으로이를 피하십시오.

오류 수정은 프로그래밍에서 아주 간단한 작업입니다.

실제로 PHP 코드가 JS에 간섭하는 경우 (질문에 PHP 연산자 하나도 게시하지 않았으므로 확신 할 수 없음) PHP 모드를 닫고 그대로 JS를 작성하십시오 그냥 순수 HTML 페이지의 :

//some php 
// then close it 
?> 
<a href="#" onclick='javascript: if (days.value == "") { alert("Please select at least 1 day to schedule this report"); return false; }'> 
<?php 
// open PHP back 

당신은 JS의 내부에 일부 PHP 값을 필요로하는 경우 - 다시 개방 PHP :

//some php 
$var = "test"; 
// then close it 
?> 
<a href="#" onclick='javascript: if (days.value == "<?=$var?>") { alert("Please select at least 1 day to schedule this report"); return false; }'> 
<?php 
// open PHP back 
+0

PHP는 JavaScript가 포함 된 문자열을 출력하기 때문에 PHP와 관련이 있습니다. of : – Lock

+0

Sane PHP 코드가 JS를 방해하지 않고 –

+0

중괄호를 변수에 추가 할 때 PHP가 중괄호를 일종의 언어 구문으로 보는 경우가 아닙니다. 중괄호를 벗어날 수 있다면 인터넷에서 중괄호를 이스케이프 처리하여 PHP에서 실제 중괄호를 출력하도록 할 수는 없습니다. – Lock

0

는 자바 스크립트 함수에 두 개의 문을 넣고 다음의 함수를 호출을 if 문.

+0

나는 페이지의 머리말이 아주 접근 가능하지 않기 때문에 이것을 시도하고 싶다 – Lock

1

테스트하지 않고 따옴표를 뒤집어 봤습니까? (더블을 싱글로, 싱글을 더블로 전환 했습니까?) PHP는 내가에 중괄호를 출력에 대한 정보를 찾을 수 없기 때문에

onclick='javascript: if (days.value == "") { alert("Please select at least 1 day to schedule this report"); return false; }' 
+0

PHP는 열거 된 계산서와 아무 관련이 없다. –

+0

그는 PHP로 질문을 태그하고 질문에 PHP를 언급했기 때문에 나는 믿을 수 있었다. HTML은 PHP를 통해 만들어 지므로 문제의 인용문이라고 생각합니다. 내 아래 표를 제거하는 데 관심이 있으십니까?. – freefaller

+0

이러한 불쌍한 noobs는 무작위로 자신의 질문에 태그를 붙입니다 :) 태그에 맹목적으로 신뢰하지 않고 질문을 읽는 동안 자신의 경험 *을 사용해야합니다. 이 문은 PHP 따옴표로 묶은 문자열 안에있을 수 없습니다. 따라서 따옴표를 바꾸는 것은 말이되지 않습니다. –

0

"나는 두 개의 문을 둘러싸는 중괄호를 사용할 수 없습니다 ... 다른 싱글을 가진 사람들에게 큰 따옴표로 만든 문자열을 취급 PHP에서 문자열 (만약 내가 할 경우, 첫 번째 중괄호 뒤에 출력이 멈 춥니 다) "- 그냥 '{...}'을 인쇄 할 수 없습니까?