2015-06-24 4 views
1

Я хочу изменить значение метки в зависимости от выбора, сделанного в раскрывающемся списке. Я могу изменить значение, если создаю выпадающее меню, но когда я создаю ярлык или текстовое поле, из-за некоторой ошибки в коде, я не могу изменить его значение.Динамическое изменение значения метки

Пожалуйста, посмотрите на мой код внимательно и скажите мне, где я должен сделать изменения:

<?php 

include 'connect.php'; 

$emp_id = ""; 

$current_coordinator_id = ""; 

$new_coordinator_id=""; 
?> 

<?php 

if(isset($_POST['emp_id'])) { 
    $emp_id= $_POST['emp_id']; 
} 

if(isset($_POST['current_coordinator_id'])) { 
    $current_coordinator_id= $_POST['current_coordinator_id']; 
} 

if(isset($_POST['new_coordinator_id'])) { 
    $new_coordinator_id= $_POST['new_coordinator_id']; 
} 

function Showemp_id() 
{ 
    $emp_id= ""; 
    $con = Connectdb(); 
    $result_function = mysqli_query($con,"SELECT * FROM dat_database.emp_hei"); 
    while($row = mysqli_fetch_array($result_function)) 
    { 
     $emp_id .= '<option value="' . $row['EMP_ID'] . '">' . $row['EMP_ID'] . '</option>'; 
    } 
    return $emp_id; 
} 

?> 

<!doctype html public "-//w3c//dtd html 3.2//en"> 

<html> 

<head> 

    <script language="javascript" type="text/javascript"> 
     function formValidator(){ 
     //alert('Out side PHP'); 
     // Make quick references to our field 
     var emp_id = document.getElementById('emp_id'); 
     var current_coordinator_id = document.getElementById('current_coordinator_id'); 
     //var swversion = document.getElementById('swversion'); 

     // Check each input in the order that it appears in the form! 
     //if(madeSelection(functional_area , "Please Choose a Functional Area")){ 
     //if(madeSelection(project_id , "Please Choose a Project id")){ 
     //if(isAlphanumeric(swversion, "Please enter a SW version. if not applicable put 'NA'.")){ 
     //if(madeSelection(aspice_code_id , "Please Choose a ASPICE Code id")){ 
     //if(madeSelection(task_id , "Please Choose a Task id")){ 
     //if(madeSelection(subtask_id , "Please Choose a Subtask id")){ 
     //if(isAlphanumeric(date, "Please enter a date.")){ 
     if(isNumeric(hours_spent, "Please enter the hours spent")){ 
     if(isAlphanumeric(defectid, "Please enter a Defect id. if not applicable put 'NA'.")){ 
     return true; 
     } 
     } 
     //} 
     //} 
     //} 
     //} 
     //} 
     //} 
     //} 
     return false; 
     } 
     function isNumeric(elem, helperMsg){ 
      var numericExpression = /^[0-9.]+$/; 

      if(elem.value.match(numericExpression)){ 
       return true; 
      }else{ 
       alert(helperMsg); 
       elem.focus(); 
       return false; 
      } 
     } 
     function isAlphanumeric(elem, helperMsg){ 
      var alphaExp = /^[0-9a-zA-Z-.]+$/; 

      if(elem.value.match(alphaExp)){ 
       return true; 

      }else{ 
       alert(helperMsg); 
       elem.focus(); 
       return false; 
      } 
     } 

     function madeSelection(elem, helperMsg){ 
     if(elem.value == "Please Choose"){ 
     alert(helperMsg); 
     elem.focus(); 
     return false; 
     }else{ 
     return true; 
     } 
     } 

     </script> 
     <script> 
     var maxcurrent_coordinator_idLength=0; 

     function showcurrent_coordinator_id(str) 
     { 
     var xmlhttp; 
     if (str.length==0) 
     { 
     document.getElementById("taskhint").innerHTML=""; 
     return; 
     } 
     if (window.XMLHttpRequest) 
     {// code for IE7+, Firefox, Chrome, Opera, Safari 
     xmlhttp=new XMLHttpRequest(); 
     } 
     else 
     {// code for IE6, IE5 
     xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); 
     } 
     xmlhttp.onreadystatechange=function() 
     { 
     if (xmlhttp.readyState==4 && xmlhttp.status==200) 
     { 
     var str1=xmlhttp.responseText; 
     var subStr=str1.split(",",2); 
     var arrStr=subStr[0].split("#"); 
     if(maxcurrent_coordinator_idLength<arrStr.length) 
     { 
     maxcurrent_coordinator_idLength=arrStr.length; 
     } 

     for(var i=0;i<arrStr.length;i++) 
     { 
     document.getElementById("current_coordinator_id").options[i]=new Option(arrStr[i]); 
     document.getElementById("current_coordinator_id").options[i].innerText=arrStr[i]; 
     } 

     for(var j=arrStr.length;j<maxcurrent_coordinator_idLength;j++) 
     { 
     document.getElementById("current_coordinator_id").remove(arrStr.length); 
     } 
     } 
     } 
     xmlhttp.open("GET","http://10.129.65.230/subcordinator.php?r="+str,true); 
     xmlhttp.send(); 
     } 

    </script> 
    <link rel="stylesheet" href="//code.jquery.com/ui/1.11.2/themes/smoothness/jquery-ui.css"> 
    <script src="//code.jquery.com/jquery-1.10.2.js"></script> 
    <script src="//code.jquery.com/ui/1.11.2/jquery-ui.js"></script> 
    <link rel="stylesheet" href="/resources/demos/style.css"> 
    <meta charset="utf-8"> 
    <!-- Set the viewport width to device width for mobile --> 
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"> 
</head> 


<body> 

    <section class="examples white page-title"> 
    <div class="row"> 
    <div class="nine columns"> 
    <div class="twelve columns"> 
    <div class="fsBody fsEmbed"> 

    <form onsubmit="return formValidator()" action=''" method="POST" accept-charset="UTF-8" novalidate enctype="multipart/form-data" class="fsForm fsSingleColumn" id="fsForm1428139"> 
    <div role="alert" id="submittingText" style="display:none;">Submitting</div> 
    <p class="fsSectionHeading" style="text-align: center;"> 
    </p> 
    <p style="text-align: center;"> 
    <span style="font-size: 24px;">Update Coordinator_ID</span> 
    </p> 

    <p class="fsSectionText" style="text-align: center;"> 
    Please fill out required information below. 
    </p> 

    <table style="width:100%"> 


    <tr> 
    <td><label class="fsSupporting" style="margin-left:50px; for="emp_id">EMP_ID</label></td> 
    <td><select name="emp_id" id="emp_id" onchange="showcurrent_coordinator_id(this.value)" required="" style="width: 214px; margin-top:5px; class="fsField fsFieldState fsRequired" aria-required="true"> 
    <option value="">----- Select -------</option> 
    <?php echo Showemp_id(); ?> 
    </select> 
    </td> 
    </tr> 
    <tr> 
    <td><label class="fsSupporting" style="margin-left:50px; for="current_coordinator_id">Current Coordinator ID</label></td> 
    <td> 
    <select name="current_coordinator_id" size="1" multiple id="current_coordinator_id" required="" style="width: 214px; margin-top:5px; class="fsField fsFieldState fsRequired"> 
    </select> 
    </td> 
    </tr> 

    <tr> 
    <td><label class="fsSupporting" style="margin-left:50px; for="current_coordinator_id">New Coordinator ID</label></td> 
    <td> 

    <input type="text" id="new_coordinator_id" name="new_coordinator_id" size="50" required style="width: 200px; margin-top:5px; class="fsField fsFormatPhoneUS fsRequired" aria-required="true"></td> 
    </tr> 
    </table> 
    <br> 

    <p class="fsSectionText" style="text-align: center;"> 
    <input id="fsSubmitButton1428139" class="fsSubmitButton" style="width: 200px; color: rgb(0, 0, 0); background: rgb(180, 86, 146);" type="submit" value="Submit" onClick="formValidator()" /> 
    </p> 
    </form> 

</body> 

</html> 

<?php 

    $conn=mysqli_connect("localhost","root","mmint123","dat_database"); 

    $query = "UPDATE dat_database.emp_hei SET coordinator_id='$new_coordinator_id' WHERE EMP_ID='$emp_id'"; 

    mysqli_query($conn,$query) or die('Error, query failed'); 


    if ($query > 0) 
    { 
     echo "<script type='text/javascript'>alert('Coordinator_id updated successfully!')</script>"; 
    } 

?> 


<!-- You can place html anywhere within the source tags --> 


<script language="javascript" type="text/javascript"> 
// You can place JavaScript like this 

</script> 
<?php 
// You can place PHP like this 

?> 

ответ

0

Вы можете использовать JQuery для того, чтобы решить вашу проблему.

Следующий код предоставит вам значение выбранного параметра.

$('select').on('change', function() { 
    alert(this.value); // or $(this).val() 
}); 

После этого вы можете использовать внутренний html для изменения значения метки. Демо-код, чтобы использовать внутренний HTML:

document.getElementById("name_of_label_div_tag_here").innerHTML = "Dynamic Text goes here"; 

PS - Вы можете использовать Ajax, чтобы получить значение динамического текста с сервера, если вы не хотите, чтобы на жесткий код.

Смежные вопросы