php - 链式选择 ajax 调用仅在值为数字时有效

标签 php mysql ajax json

我有以下 ajax 片段,它链接 2 个选择框并使用在 mysql 表中找到的值动态填充。

如果 callType 列是一个数值,就像在我的数据列 SPG_CallType 中找到的那样,这将非常有用。当我将其更改为使用联系字母的列时,它会破坏它。我假设这是因为代码只适用于数值?如何更新代码段的那部分以接受字母或数字?

if (isset($_GET['key'])) {
    $key = $_GET['key'];
    switch ($key) {
        case 'callTypeSelect':
            $select = new SelectBox('Repair Type?','Choose a category');
            $res = mysql_query('SELECT DISTINCT SPG_CallType FROM ' . DB_TABLE . ' ORDER BY SPG_CallType ASC');
            $callTypes = array();
            for ($i = 0; list($callType) = mysql_fetch_row($res); $i++) {
                $callTypes[] = $callType;
                $select->addItem($callType, 'brandSelect-' . $callType);
            }
            header('Content-type: application/json');
            echo $select->toJSON();
            break;
        default:
            if (strpos($key, 'brandSelect-') === 0) {
                $callType = str_replace('brandSelect-', '', $key);
                $resBrands = mysql_query('SELECT SPG_Brand FROM ' . DB_TABLE
                    . ' WHERE SPG_CallType = ' . mysql_real_escape_string($callType) . ' ORDER BY SPG_Brand ASC');
                $select = new SelectBox('Choose a Manufacturer', 'Pick a brand');
                for ($i = 0; list($brand) = mysql_fetch_row($resBrands); $i++) {
                    $select->addItem($brand, 'result-' . $brand . '-' . $callType);
                }
                header('Content-type: application/json');
                echo $select->toJSON();

最佳答案

@roryok 回答了问题,但没办法给评论点赞?

$select->addItem('\'' . $callType . '\'', 'brandSelect-' . $callType);

关于php - 链式选择 ajax 调用仅在值为数字时有效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10854468/

相关文章:

javascript - PHP 变量值未显示在 JS 警报中

php - 如何在php中显示MySQL查询的结果?

php更新多行

mysql - 如何将多列连接为多列?

Python Scrapy - Ajax 分页 Tripadvisor

javascript - Ajax 推进

php - 在 PHP 登录脚本中使用 session 和 session 变量

php - 如何在easyphp 16.1.1中使用PHP PDO连接MySQL

javascript - 如何根据点击从时间选择器字段中获取值?

javascript - 使用 jQuery/AJAX 用新的表单/内容重新填充 div