簡體   English   中英

Ajax沒有被select調用

[英]Ajax not being called by select

嗨,我有一個選擇框,當它更改時,我希望通過Ajax更新數據庫中的值。 使用控制台,我可以看到未調用我的saveedit2.php文件。

選擇框

    <form><select id="workingpattern">
    <?php
              if(isset($workingpatterns) && !empty($workingpatterns)){
              foreach($workingpatterns as $k4=>$v4) {
              ?> 

    <option value="<?php echo $workingpatterns[$k4]["workingpatternid"]; ?>"> 
<?php echo $workingpatterns[$k4]["text"]; ?></option>
    <?php }}?>
    </select></form>

阿賈克斯:

 <script>

$(document).ready(function(){

 $('#workingpattern').change(function(){
    var e = document.getElementById("workingpattern");
    var value = e.options[e.selectedIndex].value;

    $.ajax({
        url: "saveedit2.php",
        type: "post",
        data: value,
        success: function(data) {

           console.log(data);
        }});

});

</script> 

SaveEdit2.php

<?php
require_once("connect_db.php");

$value=$_POST['value'];

$sql = "UPDATE employmenthistory SET workingpatternid = '$value' WHERE employmenthistoryid=1";
$result = mysqli_query ($dbc, $sql) or die(mysqli_error ($dbc));
?> 

我看到了一些問題。 首先,我將使用“ this”來獲取元素,並使用jQuery來獲取值,因為您已經在使用它。 其次,您需要為數據集中的值命名:

$('#workingpattern').change(function(){
    var value = $(this).val();
    $.ajax({
        url: "saveedit2.php",
        type: "post",
        data: 'value='+value,
        success: function(data) {
           console.log(data);
        }
    });
});

嘗試

阿賈克斯

$('#workingpattern').change(function(){
    var value = $("#workingpattern").val();

            $.ajax({
              dataType: "json",
              url: "./saveedit2.php",
              data: {'value':value},
              success: function(data){
                  if(data['result']=="ok")       
                       alert("Done");
                  else
                      alert("Error");
              }
            });

SaveEdit2.php

<?php
require_once("connect_db.php");
$ajax_result = "error";
$value=$_POST['value'];

$sql = "UPDATE employmenthistory SET workingpatternid = '$value' WHERE employmenthistoryid=1";
$result = mysqli_query ($dbc, $sql) or die(mysqli_error ($dbc));
if($result)
$ajax_result = "ok";

echo json_encode(array('result'=>$ajax_result));

?> 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM