2012-06-18 2 views
0

프로그래밍 언어를 처음 사용합니다. 나는 다른 필드에서 값을 얻을 수 있고 자바 스크립트를 사용하지 않고 동일한 필드에서 다른 필드로 전달할 수 있는지 알고 싶습니까? 누군가 나에게 설명 할 수 있습니까? 고마워.한 필드에서 다른 필드로 값 전달

이 내 양식 페이지

<form id="leave_form"> 
<table><tr> 
<td width="70"><b>*</b> Date From:</td> 
<td width="120"><span id="lv_date_from_btn"><input readonly class="field_required control" onchange="validateLeave('from')" id="lv_date_from" name="date_from" value="<?php echo $start_date?>" size="10" maxlength="10"/> <img src="images/calendar.gif"/></span></td> 
</tr> 
<tr> 
<td width="70"><b>*</b> Date To:</td> 
<td width="120"><span id="lv_date_to_btn"><input readonly class="field_required control" onchange="validateLeave('to')" id="lv_date_to" name="date_to" value="<?php echo $end_date?>" size="10" maxlength="10"/> <img src="images/calendar.gif"/></span></td> 
</tr> 

<?php if ($userid == '609'):?> 
<tr> 
<td><b>*</b> Relief Staff: </td> 
<td> 

<select name="userid" id="frm_userid2" class="field_required control" onchange="validateLeave('relief')" >  
<?php 
$leavefrom = $_REQUEST['from']; 
$leaveto = $_REQUEST['to']; 
if (empty($leavefrom)) 
{ 
echo '<option value="" selected disabled>Select...</option>'; 
} 
else{ 
echo '<option value="" selected disabled>Select...</option>';     
$sql = " 
SELECT distinct fullname FROM core_user LEFT JOIN lms_tran ON lms_tran.userid = core_user.userid where core_user.userid NOT IN (SELECT userid FROM lms_tran WHERE date_from BETWEEN '$leavefrom' AND '$leaveto' AND app_status = 'Approved') AND core_user.userid != 609 AND core_user.status = 'Y' ORDER by fullname ASC 
       "; 

$result = mysql_query($sql); 

while ($row = mysql_fetch_assoc($result)) 
{      
echo '<option value="'.$row["userid"].'">'.$row["fullname"].'</option>';      
} 
}?> 
</select> 
</td> 
</tr> 
<?php endif; ?> 
    </table> 
    </form> 

이 자바 스크립트

function validateLeave(type) 
{ 
    var days= jQuery('#frm_days').val(); 
    var from = jQuery('#lv_date_from').val(); 
    var to = jQuery('#lv_date_to').val(); 
    var relief = jQuery('#frm_userid2').val(); 

    if (type != 'check') 
    { 
     days_incorrect = true; 
    }  
    if (type == 'days' || type == 'from') 
    { 
     to = ''; 
     relief = ''; 
    } 
    if (type == 'to') 
    { 
     days = ''; 
    }  

    if ( 
     (
     (days == '' ? 0 : 1) + 
     (to == '' ? 0 : 1) + 
     (from == '' ? 0 : 1)   
     ) < 2 
    ) 
    { 
     days_correct = false; 
     return; 
    } 

    days = parseFloat(days); 
    jQuery('#frm_days').val(days); 
    jQuery('.control').attr('disabled', true); 
    jQuery('#lv_loading').show();  
    jQuery.post('index.php?_m=lms&_a=leave_validate&from='+from+'&to='+to, {from:from,to:to,days:days}, function(res){ 
     eval('var r = '+res+';'); 
     if (r.status == 'OK') 
     { 
      days_incorrect = false; 
      if (r.to) 
      { 
       jQuery('#lv_date_to').val(r.to); 
      } 
      if (r.from) 
      { 
       jQuery('#lv_date_from').val(r.from); 
      } 
      if (r.days) 
      { 
       jQuery('#frm_days').val(r.days); 
      } 
     }   
     else if (r.status == 'HOLIDAYERROR') 
     { 
      alert('Incorrect leave start date. Leave start date can not fall into Weekend or Public Holidays'); 
      days_incorrect = true; 
     } 
     else 
     { 
      alert('Incorrect leave period. Please check back Leave Start, Leave End and Leave Days') 
      days_incorrect = true; 
     } 
     jQuery('.control').attr('disabled', false); 
     jQuery('#lv_loading').hide(); 
    }); 

} 

이고 내가 jQuery를 통해 값을 전달 HV으로 내가 PHP 코드의 값의 수익을 얻을 could'nt.

+0

왜 필요한가요? –

+0

필드별로 무엇을 의미합니까? 더 자세히 설명하거나 phpsedo 코드를 게시하십시오. – Sarfraz

+0

내가 양식에 여러 개의 입력 텍스트가 있음을 의미하고 텍스트 필드의 값을 제출하기 전에 두 번째 입력 텍스트 필드에 전달하고 싶습니다. –

답변

1

아니요, 불가능합니다. 대화 형 작업을 수행하는 유일한 방법은 자바 스크립트를 사용하여 작업하는 것입니다. 상관 없으면 두 번째 변수에 첫 번째 변수의 값을 할당하여 서버에서이 작업을 수행 할 수 있습니다.

+0

ok 감사하지만 위의 코드를 확인할 수 있습니다. 값을 얻으려고했는데 .. 여전히 반환됩니다. 빈.. –

관련 문제