как связано с DatePicker с Ajax LiveSearch - PullRequest
0 голосов
/ 08 декабря 2018

У меня проблема, и я был бы рад, если вы поможете.Я хочу использовать datepicker и ajax livesearch вместе на веб-сайте для поиска.Когда дата вводится в поле поиска вручную, она добавляется в окно поиска и поиск завершается.если я выбираю дату из средства выбора даты, она отображается в окне поиска, но livesearch не работает или не выполняет поиск.как я понимаю результат datepicker не обрабатывается livesearch.Я думаю, что мне нужен javascript для получения данных друг от друга, но я не могу.Я жду вашей помощи.Следующие коды актуальны.спасибо.

<!doctype html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">

    <link href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.7.1/css/bootstrap-datepicker.min.css" rel="stylesheet"/>
    <link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
	
<script>
function showResult(str) {
  if (str.length==0) { 
    document.getElementById("livesearch").innerHTML="";
    document.getElementById("livesearch").style.border="0px";
    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 (this.readyState==4 && this.status==200) {
      document.getElementById("livesearch").innerHTML=this.responseText;
      document.getElementById("livesearch").style.border="1px solid #A5ACB2";
    }
  }
  xmlhttp.open("GET","livesearch.php?q="+str,true);
  xmlhttp.send();
}
</script>
</head>
	<body>

<div class="container">
    <div class="row" style="padding-top: 10px">
        <div class="col">
            <input type="text" size="30" onkeyup="showResult(this.value)" id="datepicker">
        </div>
		<div id="livesearch"></div>
    </div>
 </div>
		

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.7.1/js/bootstrap-datepicker.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>
<script type="text/javascript">
    $('#datepicker').datepicker({
        weekStart: 1,
        daysOfWeekHighlighted: "6,0",
        autoclose: true,
        todayHighlight: true,
		format: "dd.mm.yyyy",
		clearBtn: true,
        language:  'tr',
        todayBtn:  true,
		autoclose: false,
		dayofweekhiglight: true,
    });
    $('#datepicker').datepicker("setDate", new Date());
	

	
</script>
</body>
</html>

1 Ответ

0 голосов
/ 08 декабря 2018

В загрузчике datepicker есть событие changeDate, которое вы можете использовать для вызова своей функции showResult.См. https://bootstrap -datepicker.readthedocs.io / en / latest / events.html # changesate

...