gpt4 book ai didi

jQuery 自动完成与 Codeigniter,不在索引函数之外工作

转载 作者:行者123 更新时间:2023-12-01 07:19:33 24 4
gpt4 key购买 nike

使用 Codeigniter 和 jquery 真是让人抓狂。

我目前有一个非常基本的代码集来解决这个问题。

目前我的索引函数调用我的 View 。 View 在这种情况下完美地处理了 jquery 自动完成。

如果我将索引更改为indextest或任何其他名称,自动完成功能将停止工作。几乎就像jquery 输出被专门传递到页面的默认方法,即index.php。

有没有办法指定必须返回或显示的方法?

我的 Controller 是:

<?Php

class Sales extends MY_Controller{

function __construct() {
//call parent constructor
parent::__construct();
$this->load->model('sales_model');
}

function index(){
$this->load->view('sales/new_order_details');
}

function get_customers(){
$this->load->model('Sales_model');
if (isset($_GET['term'])){
$q = strtolower($_GET['term']);
$this->Sales_model->get_customer($q);
}
}

function login() {
redirect('/pointer/login');
}

function logout() {
redirect('/pointer/logout');
}
}

我的模型

<?php
// (Array of Strings)
class Sales_model extends MY_Model{

function get_customer($q){
$this->db->select('CustomerName');
$this->db->like('CustomerName', $q);
$query = $this->db->get('Customers');
if($query->num_rows > 0){
foreach ($query->result_array() as $row){
$row_set[] = htmlentities(stripslashes($row['CustomerName'])); //build an array
}
echo json_encode($row_set); //format the array into json data
}
}
}

我的观点

<html>
<head>
<title>
Capture New Order
</title>

<link href="<?php echo base_url() ?>application/css/ui-lightness/jquery-ui-1.8.custom.css" media="screen" type="text/stylesheet" rel="stylesheet">
<script src="<?php echo base_url() ?>application/scripts/jquery-1.9.1.min.js" type="text/javascript"></script>
<script src="<?php echo base_url() ?>application/scripts/jquery-ui-1.10.1.custom.min.js" type="text/javascript"></script>
<script src="<?php echo base_url() ?>application/scripts/autocomplete.js" type="text/javascript"></script>
</head>
<body>
<div data-role="page" data-theme="a">
<div class="wrap-header">
<div data-role="header" data-mini="true" data-ajax="false">
<a data-icon="grid" data-mini="true" data-theme="a" onclick="window.location.href='/pointer'">Menu</a>
<h3>New Order Details</h3>
</div>
</div>
<div data-role="content">
<form>
<label for="customer">Customer</label>
<input type="text" id="customer" />
</form>
</div>

</body>
</html>

autocomplete.js

$(function(){
$("#customer").autocomplete({
source: "sales/get_customers"
});
});

如上所述,如果我将 Controller 的 index() 方法更改为 indextest() 并直接浏览到该方法,自动完成功能将停止工作。

我是否错过了一些简单的事情,或者是否有更大的原因让我无法锻炼?

一如既往地感谢您的帮助,

按照 FABIO 更新谷歌浏览器开发人员调用自动完成脚本的输出

正常索引()工作) enter image description here

索引文本() enter image description here

最佳答案

关于这个

    $(function(){
$("#customer").autocomplete({
source: "sales/get_customers"
});
});

这样做

$(function(){
$("#customer").autocomplete({
source: "<?=site_url('sales/get_customers')?>"
});
});

关于jQuery 自动完成与 Codeigniter,不在索引函数之外工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15382247/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com