javascript - 单击时设置字符串的值

标签 javascript php jquery

我正在尝试通过搜索产品名称来设置 productID 字段的值。搜索返回正确的结果并显示它们,但单击时该值被设置为数字。

例如,这是搜索时返回的内容...

pID: "<a class='result' onclick='setID(0001-001-004)' href='#'>Product Code=0001-001-004, White Folding Chair</a>"

当点击下面的结果时,输入的值设置为-4。如果返回的数字是 0001-002-005,它将设置为 -5。

setID 函数的代码是...

function setID(pID) {
    var prodCode=toString(pID);     
    $('input#productCode').val(pID);
    var clear="";
    $('div#suggestions').html(clear);
    $('div#suggestions').hide(); 

}  

有谁知道我该怎么做。我无法返回双引号或单引号之间的 id,因为这是返回结果的 php。正如您将看到的那样,双引号和单引号的使用让我无法以这种方式做到这一点......

$array[] = array (
        "pID" =>"<a class='result' onclick='setID(".$row['ITEMNO'].")' href='#'>Product Code=". $row['ITEMNO'].", " .$row['ITEMDESC']."</a>"
    );

最佳答案

你需要在连接两边加上单引号,像这样

$array[] = array (
        "pID" =>"<a class='result' onclick='setID(\'".$row['ITEMNO']."\')' href='#'>Product Code=". $row['ITEMNO'].", " .$row['ITEMDESC']."</a>"
    );

关于javascript - 单击时设置字符串的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49012797/

相关文章:

javascript - Controller 内的 Angular 位置固定( Angular 模态?)

javascript - jQuery:取消选择元素中的选项

javascript - 将 Geoserver 的形状文件加载到 Openlayers 中以添加其他图层

javascript - 使用 AJAX 将多个 js 变量解析为 php

php - 将PHP AES加密移植到Golang

javascript - 匹配直到下一行开始

javascript - 使用 jquery 选择多个文本

javascript - 当用户进入当前网页时,html 5 视频以全屏模式自动打开

javascript - UI Bootstrap 日期选择器在 ng-admin 自定义页面中不起作用

javascript - 添加新输入:checkbox and not has value