Javascript AJAX console.log返回未定义的
我在数据库的while循环中有两个输入字段:Javascript AJAX console.log返回未定义的,javascript,ajax,undefined,console.log,Javascript,Ajax,Undefined,Console.log,我在数据库的while循环中有两个输入字段: <input type="hidden" id="ID<?=$product['id'];?>" name="ID" value="<? =$product['id'];?>"> <input type="hidden" id="name<?=$product['id'];?>" name="hidden_name" value="<?=$product['title'];?>
<input type="hidden" id="ID<?=$product['id'];?>" name="ID" value="<?
=$product['id'];?>">
<input type="hidden" id="name<?=$product['id'];?>" name="hidden_name"
value="<?=$product['title'];?>">
id=“按钮”
前面不应有“按钮”,因此:
id="<?=$product['id'];?>"
id=“”
这是正确的。对不起,我忘记了。id=“button”
前面不应有“按钮”,因此:
id="<?=$product['id'];?>"
id=“”
这是正确的。对不起,我没有注意到。如果console.log(product\u id)
返回button6
,这意味着您的产品名称是namebutton6
。我相信您希望它是name6
由于您将其过度复杂化,最简单的方法是:
var product_name = $(`#name${product_id.slice(6)}`).val();
如果console.log(product\u id)
返回button6
,则使用slice(6)
方法删除前六个字符,这六个字符是'button'
。我相信您希望它是name6
由于您将其过度复杂化,最简单的方法是:
var product_name = $(`#name${product_id.slice(6)}`).val();
您使用slice(6)
方法删除前六个字符,它们是'button'
所以,您要说的是,$('namebutton6')
正确返回了0个元素?所以,您要说的是,$('namebutton6')
正确返回了0个元素?实际上它可能应该,但是您应该删除前缀来构造product\u id
。实际上可能应该删除前缀,但是您应该删除前缀来构造product\u id
。
var product_name = $(`#name${product_id.slice(6)}`).val();