AJAX загрузить в другой div с переменной - PullRequest
0 голосов
/ 09 мая 2020

Привет, я пытаюсь загрузить другой div с передаваемой переменной. Я нахожусь в div # main, я хочу, чтобы после нажатия кнопки #modifybtn передавалось значение btn и загружалось с другим изменением div # и работало с некоторым запросом. im noob для jQuery и ajax, я ищу в Интернете, но не могу найти решение для этого. пожалуйста, проверьте соответствующий код и сообщите мне о проблеме.

вот кнопка div # main #modifybtn и div # modify

<div id=main>
 <button id="modifybtn" value="some_value" >Modify</button>
</div>

<div id="modify">
<?php 
$resultmodi=$conn->query("SELECT * FROM vacancy WHERE vc_id='{$_GET['id']}' LIMIT 1 ");
?>
</div>

dashcompany. php внутри

<div class="contentcm" >
//contentcm.php page load content here
</div>

это мой jQuery, после нажатия кнопки отображается предупреждение, но не перенаправляется на #modify div

$(document).ready(function(){
    $('.contentcm').load('contentcm.php #main');

    $('a').click(function(){  //main and modify division in contentcm.php 
        var clickedLink1 = $(this).attr('id');
        $('.contentcm').load('contentcm.php #' + clickedLink1);
    });
});

$(document).on("click", '#modifybtn', function(event) { 

  var id = $(this).val();
  alert(id);
  event.preventDefault(); 
  $.ajax({
    url: 'dashcompany.php',
    type: 'get',
    data: {'id' : id},
      success: function(response) {
        $('#modify').html(response); 
      }
  });
});

Ответы [ 2 ]

1 голос
/ 09 мая 2020

Это будет начальный. html файл

<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
<script src = "FILE_NAME.js"></script>
</head>
<body>
<div id=main>
 <button id="modifybtn" value="some_value" >Modify</button>

<div id="modify"></div>

</div>

</body>
</html>

Ваш код в ИМЯ ФАЙЛА. js должен выглядеть как

$(document).on("click", '#modifybtn', function(event) { 
  var id = $(this).val();
  alert(id);
  event.preventDefault(); 
  $.ajax({
    url: 'dashcompany.php',
    type: 'get',
    data: {'id' : id},
      success: function(response) {
        $('#modify').html(response); 
      }
  });

Ваш js файл загрузит данные из dashcompany. php и загрузит в #modify, который находится в исходном состоянии. html файл

dashcompany. php

<?php
include_once('connection.php');
$id = $_GET['id'];
$resultmodi=$conn->query("SELECT * FROM vacancy WHERE vc_id='$id' LIMIT 1 ");
$row = $resultmodi->fetch_assoc();
echo "Name: " . $row["name"];
''' print data whatever you need '''
$conn->close();
?>

ПРИЧИНА: Возможно, вы забыли распечатать данные в файле dashcompany. php, поэтому вы получаете пустой ответ от ajax запроса.

И не забудьте включить в него #modify div html файл, в котором существует # main # modify div

0 голосов
/ 09 мая 2020

Вы можете использовать следующий код, и я предлагаю вам использовать метод публикации

<!DOCTYPE html>
<html lang="en" dir="ltr">

<head>
<meta charset="utf-8">
<title></title>
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css" integrity="sha384-Vkoo8x4CGsO3+Hhxv8T/Q5PaXtkKtu6ug5TOeNV6gBiFeWPGFN9MuhOf23Q9Ifjh" crossorigin="anonymous">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js"></script>
</head>

<body>

<button type='button' id="modifybtn" class='btn btn-info' value="some_value">click here</button>


<div class="" id="modify"></div>

<script type="text/javascript">
 $(document).on("click", '#modifybtn', function(event) {
 var  id = $(this).val();
 //alert(id);
 $.ajax({
 url: 'dashcompany.php',
 type: 'post',
 data: {'id' : id},
 dataType: 'json',
 success: function(response) {
    //now you can call with colomn name of data table
   $('#modify').html("<P>"+response.colommn_one_name+"</p><br><P>"+response.colommn_two_name+"</p>");
   }
  });
});
</script>

И ваша страница dashcompany. php должна понравиться,

<?php 
 // $localhost = "127.0.0.1";
 // $username = "root";
 // $password = "";
 // $dbname = "db_304";
 // 
 // $connect = new mysqli($localhost, $username, $password, $dbname);
 // // check connection
 // if ($connect->connect_error) {
 //     die("Connection Failed : " . $connect->connect_error);
 // }

 $id = $_POST['id'];

 $sql = "SELECT * FROM vacancy WHERE vc_id = '$id' LIMIT 1 ";
 $result = $connect->query($sql);

 if ($result->num_rows > 0) {
    $row = $result->fetch_array();
 } // if num_rows

 $connect->close();

 echo json_encode($row);

Надеюсь, это вам поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...