繁体   English   中英

PHP 和 MYSQL AJAX - 自动填充多个文本字段

[英]PHP and MYSQL AJAX - autofill multiple text fields

我正在使用 Nodstrum 提供的出色教程。 我正在尝试使用 PHP、MYSQL 和 AJAX 自动填充多个文本字段。 我有一个 PHP 脚本,这是返回结果的代码行:

echo '<li onClick="fill(\''.$result->name.'|'.$result->id.'\');">'.$result->name.'</li>';

请注意,我将结果与管道字符分开。

这是 function,我收到错误“未定义或不是对象”,我正在分解值并使用 pipestem 从 mysql 拆分值。

function fill(thisValue) {
    myvalues=thisValue.split('|') {
        $('#inputString').val(myvalues[0]);
        $('#email').val(myvalues[1]);
    }
    window.setTimeout("$('#suggestions').hide();", 200);
}

如果我“确定”错误消息,我最终会在文本字段中看到两个值,所以我相信我正在从 MySQL 正确检索这些值。 我感谢任何人可以提供的任何帮助,以使我朝着正确的方向或新的视角前进。 再次感谢,--马特

尝试这个:

function fill(thisValue) {
    myvalues=thisValue.split('|');

    $('#inputString').val(myvalues[0]);
    $('#email').val(myvalues[1]);

    window.setTimeout("$('#suggestions').hide();", 200);
}

您传递的成为 thisValue 的值是 null 或未定义。 您可以在盲目尝试对其进行拆分之前测试此参数(拆分 function 仅适用于字符串)。

function fill(thisValue) {
    // "value" will always be a string
    var value = thisValue ? String(thisValue) : '';

    // this line will not generate an error now
    var myvalues=value.split('|');

    // but these ones might!  make sure the length of myvalues is at least 2
    if (myvalues.length >= 2) {
      $('#inputString').val(myvalues[0]);
      $('#email').val(myvalues[1]);
    }
    // this might need to go inside the above if
    window.setTimeout("$('#suggestions').hide();", 200);
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM