feat: 하향식 탄성파 시험 단위 선택시 기본 단위 "MPa"로 설정
parent
e0e04e891f
commit
b89ee534f4
|
|
@ -158,15 +158,6 @@ public class ProjectListController {
|
||||||
model.addObject("result", "false");
|
model.addObject("result", "false");
|
||||||
model.addObject("message", "해당 사업명이 이미 있습니다. 다른 사업명으로 입력 해주세요.");
|
model.addObject("message", "해당 사업명이 이미 있습니다. 다른 사업명으로 입력 해주세요.");
|
||||||
model.setViewName("redirect:/index_db.do");
|
model.setViewName("redirect:/index_db.do");
|
||||||
model.addObject("rUrl",rUrl);
|
|
||||||
|
|
||||||
response.setCharacterEncoding("euc-kr");
|
|
||||||
PrintWriter writer = response.getWriter();
|
|
||||||
writer.println("<script type='text/javascript'>");
|
|
||||||
writer.println("alert('해당 사업명이 이미 있습니다. 다른 사업명으로 입력 해주세요.');");
|
|
||||||
writer.println("history.go(-1);");
|
|
||||||
writer.println("</script>");
|
|
||||||
writer.flush();
|
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -146,6 +146,102 @@
|
||||||
document.frmSelect.submit();
|
document.frmSelect.submit();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function isAnyRadioChecked(radioName) {
|
||||||
|
var radios = document.getElementsByName(radioName);
|
||||||
|
for (var i = 0; i < radios.length; i++) {
|
||||||
|
if (radios[i].checked) {
|
||||||
|
return true; // 선택된 radio 버튼이 있으면 true 반환
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return false; // 선택된 radio 버튼이 없으면 false 반환
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
function findRadioByLabelText(inputRadioName, labelText) {
|
||||||
|
labelText = myTrim(String(labelText)); // 텍스트 공백 제거
|
||||||
|
var labels = document.getElementsByTagName("label");
|
||||||
|
|
||||||
|
for (var i = 0; i < labels.length; i++) {
|
||||||
|
var labelTextContent = labels[i].textContent || labels[i].innerText;
|
||||||
|
labelTextContent = myTrim(String(labelTextContent)); // 텍스트 공백 제거
|
||||||
|
|
||||||
|
if (labelTextContent.indexOf(labelText) !== -1) {
|
||||||
|
// label 내부의 input 요소들을 가져옴
|
||||||
|
var inputElements = labels[i].getElementsByTagName("input");
|
||||||
|
|
||||||
|
for (var j = 0; j < inputElements.length; j++) {
|
||||||
|
var radioInput = inputElements[j];
|
||||||
|
// radio 타입이고, name 속성이 일치하는지 확인
|
||||||
|
if (radioInput.type === "radio" && radioInput.name === inputRadioName) {
|
||||||
|
return radioInput; // 일치하는 radio 버튼 반환
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return null; // 해당 텍스트를 가진 radio 버튼을 찾지 못한 경우
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
function extractRadioLabelsByTableHeadText(headText) {
|
||||||
|
var tableRows = document.getElementsByTagName("tr"); // 모든 tr 요소 가져오기
|
||||||
|
var labels = [];
|
||||||
|
|
||||||
|
for (var i = 0; i < tableRows.length; i++) {
|
||||||
|
var headCell = tableRows[i].querySelector('.td-head'); // td-head 클래스 찾기
|
||||||
|
|
||||||
|
if (headCell && headCell.textContent === headText) { // 텍스트 비교
|
||||||
|
var radioLabels = tableRows[i].getElementsByTagName("label"); // 하위 label 요소 가져오기
|
||||||
|
|
||||||
|
for (var j = 0; j < radioLabels.length; j++) {
|
||||||
|
var labelText = radioLabels[j].textContent || radioLabels[j].innerText; // IE 호환성
|
||||||
|
labels.push(labelText); // label 텍스트 배열에 추가
|
||||||
|
}
|
||||||
|
break; // "전단탄성계수"를 찾았으므로 반복 종료
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return labels; // label 텍스트 배열 반환
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
function extractRadioLabelsByName(inputName) {
|
||||||
|
var radios = document.getElementsByName(inputName); // name 속성으로 radio 버튼 가져오기
|
||||||
|
var labels = [];
|
||||||
|
|
||||||
|
for (var i = 0; i < radios.length; i++) {
|
||||||
|
var radio = radios[i];
|
||||||
|
// radio 버튼의 label 찾기 (for 속성 이용)
|
||||||
|
var label = document.querySelector('label[for="' + radio.id + '"]');
|
||||||
|
|
||||||
|
if (label) {
|
||||||
|
var labelText = label.textContent || label.innerText; // IE 호환성
|
||||||
|
labelText = myTrim(labelText);
|
||||||
|
labels.push(labelText); // label 텍스트 배열에 추가
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return labels; // label 텍스트 배열 반환
|
||||||
|
}
|
||||||
|
|
||||||
|
function myTrim(str) {
|
||||||
|
return str.replace(/^\s+|\s+$/g, '');
|
||||||
|
}
|
||||||
|
|
||||||
|
function setDefaultUnit(inputRadioName, unitLowerCase) {
|
||||||
|
|
||||||
|
if ( isAnyRadioChecked(inputRadioName) == false ) {
|
||||||
|
var labels = extractRadioLabelsByName(inputRadioName);
|
||||||
|
console.log(labels);
|
||||||
|
for (var i = 0; i < labels.length; i++) {
|
||||||
|
if( String(labels[i]).toLowerCase() == unitLowerCase ) {
|
||||||
|
var targetRadio = findRadioByLabelText(inputRadioName, String(labels[i]));
|
||||||
|
targetRadio.checked = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
//단위 팝업
|
//단위 팝업
|
||||||
function fn_referenceDiv(chkId, divId) {
|
function fn_referenceDiv(chkId, divId) {
|
||||||
|
|
||||||
|
|
@ -203,6 +299,12 @@
|
||||||
|
|
||||||
kendoJQuery("#" + divId).removeClass("trViewOff");
|
kendoJQuery("#" + divId).removeClass("trViewOff");
|
||||||
kendoJQuery("#" + divId).html(data);
|
kendoJQuery("#" + divId).html(data);
|
||||||
|
|
||||||
|
// 하향식탄성파에서 '전단탄성계수' 및 '영률'의 MPa단위를 기본값으로 설정한다.
|
||||||
|
//전단탄성계수
|
||||||
|
setDefaultUnit('DH_SHEAR_MODULUS', 'mpa');
|
||||||
|
//영률
|
||||||
|
setDefaultUnit('DH_YOUNGS_MODULUS', 'mpa');
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue