チームメイトが作成した Web ページに取り組んでいます。
このボタン (ポップアップ ウィンドウの日付ピッカーにつながります) があり、その下にいくつかのテキスト ボックスとラベルが自動的に入力されます (動作します)。ただし、テキスト ボックスの 1 つの横に 1 組のラジオ ボタンがあり、選択できるのは 1 つだけです。いずれかのラジオ ボタンを選択すると、テキスト ボックスの値が変更されます。
現在、そうではありません。ラジオボタンのコードは次のとおりです。
<select name="apply_hrs_wholeday" id="apply_hrs_wholeday" onchange="javascript:UpdateExcesshoursApplicationForm('Apply_hrs_selection');">
<option value='1' <%=(requestApplicationForm.Apply_hrs_wholeday ? " selected " : "")%>>
Whole day
</option>
<option value='2' <%=(!requestApplicationForm.Apply_hrs_wholeday ? " selected " : "")%>>
Half-day
</option>
</select>
さて、それは私のコードではないので、私はそれを読むのに苦労していることを認めます. 彼が asp: something を使用していないことに気付きましたが、コードの他の部分が台無しになる可能性があるため、完全に置き換えることには消極的です。そこにある JavaScript は、ページのリロードを防止したり、コードからいくつかの変数 (?) をロードしたりするために使用されたと思いますが、確かではありません。
私ができる簡単なこと (ポストバック、多分?) があるかどうかを尋ねるか、ラジオ ボタンの onclick イベントの検出を可能にする現在のコードに追加し、いくつかの新しいコードを実行します。
Javascript:
function UpdateExcesshoursApplicationForm(action, app_id, app_index) {
var senddata;
if (window.ActiveXObject) {
xmlHttp = new ActiveXObject('Microsoft.XMLHTTP');
}
else if (window.XMLHttpRequest) {
xmlHttp = new XMLHttpRequest();
}
if(app_id==null)
app_id=0;
if(app_index==null)
app_index=0;
var PaycodeTypeObj;
var PaycodeTypeText;
PaycodeTypeObj=document.getElementById('PaycodeType');
PaycodeTypeText=PaycodeTypeObj.options[PaycodeTypeObj.selectedIndex].text;
var workflowactionidObj;
var workflowactionidText;
workflowactionidObj=document.getElementById('workflowactionid');
workflowactionidText=workflowactionidObj.options[workflowactionidObj.selectedIndex].text;
senddata=getfrmValues(document.getElementById('frmRequestApplicationForm')) +
'&action=' + action + '&PaycodeTypeText=' + PaycodeTypeText + '&workflowactionidText=' + workflowactionidText + '&app_id=' + app_id + '&app_index=' + app_index;
xmlHttp.open('POST',URL.value,false);
xmlHttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
xmlHttp.send(senddata);
if(xmlHttp.readyState == 4) {
if(xmlHttp.status == 200) {
var data = xmlHttp.responseText;
var start = data.indexOf("pageForm")+10;
var end = data.indexOf("endPageDivForm")+17;
document.getElementById("pageForm").innerHTML = data.substring(start,end);
initializeControls();
if(action=='Validate') {
if(document.getElementById("Valid").value=='True') {
revealModal(document.getElementById('frmRequestApplicationForm'),'modalEmployeeHrsConfirmation');
}
}
if(action=='Refresh') {
revealModal(document.getElementById('frmRequestApplicationForm'),'modalEmployeeHrsSelection');
}else if(action=='ShowPaycode') {
revealModal(document.getElementById('frmRequestApplicationForm'),'modalPaycode');
}else if(action=='ShowWorkflow') {
revealModal(document.getElementById('frmRequestApplicationForm'),'modalWorkflow');
}else if(action=='ShowEmployee') {
revealModal(document.getElementById('frmRequestApplicationForm'),'modalEmployeeInfo');
}
}
}