2014-01-13 5 views
0

테이블 안에 여러 개의 텍스트 상자가있는 양식이 있습니다. 또한 표 내부에는 있지만 양식 외부에는 셀 (셀 A라고 함)이 있습니다.양식 변경시 색상 변경

처음 양식에 액세스하면 양식의 texbox가 php/MySQL을 사용하여 데이터베이스의 데이터로 채워집니다.

텍스트 상자 값을 변경하고 POST를 사용하여 데이터베이스에 제출할 수 있습니다. 데이터베이스가 업데이트되고 동일한 (그러나 지금은 업데이트 된) 양식으로 돌아갑니다.

내 문제 : 양식의 데이터가 전송되었는지 여부를 나타내는 색칠 된 텍스트가 셀 A에 표시됩니다. 페이지에 처음 도착하거나 업데이트 후 "Actualized data"를 녹색으로 읽어야합니다. 그러나 제출하지 않고 양식을 변경하는 경우 빨간색 (또는 그와 비슷한 것)의 "Unsent data"로 변경해야합니다.

나는 PHP

style="color:<?php echo $ColorChange ?>" 

만에 텍스트를 포맷 (제출하기 전에) 양식의 변화는 내가 예를 들어의 OnChange 일부 자바 스크립트를 필요로 할 때

function ChangeColor() 
{ 
var col=document.getElementById("UpdateSign"); 
col.style.color="#FF0000"; 
} 

내 문제는 어떻게하는 방법을 알고 그 둘을 결합하십시오. 어떤 아이디어?

+2

첫 번째 문제는 자바가 자바 스크립트가 아니라는 것입니다. – epascarello

+0

모든 양식 요소에 변경 이벤트를 추가하십시오. – epascarello

+0

감사합니다 epascarello. 모든 양식 요소에 변경 이벤트를 추가했습니다. 그리고 나는 PHP를 통해 형식을 보내는 것에 대한 원래의 (그리고 나쁜) 생각을 버린다. 또한 자바와 자바 스크립트에 관한 독서가 필요합니다. (저는 실제로 생물 학자입니다 ...) – CMArg

답변

-3

본문의 onchange 이벤트를 사용하면 이것이 제대로 작동한다고 가정합니다. 나는 이것이 당신의 완전한 코드를 알지 못하기 때문에 이것을 추측하고있다.

<body onchange=ChangeColor()> 
0

HTML 요소 외부에서 Javascript 이벤트 트리거를 유지하고 이벤트 리스너를 사용하십시오. jQuery는 이벤트 리스너를 매우 쉽게 바인딩합니다. 예를 들어

,

$("#form_input_element").on("onchange", ChangeColor); 

폼 요소의 ID를 취하고 onchange 이벤트에 ChangeColor 기능을 결합한다.