因为他是有格式要求的。我没用jquery,我只是用控制台给你演示一下,用的是原生js
以及你用的这个我演示的input的type是date
html代码
其中那个script要换成jQuery的大概就是
$('input[name="birthday"]').val("1990-09-24");
格式必须字符串,是年-月-日,中间被减号连接,中间年月必须是两位,不是两位前面用0补全。说简单点就是格式必须是yyyy-MM-dd
这就要求你把后台获取来的年份按照上述的规则进行拼接。
善用控制台,如果尝试错误的输入的话,他可能会告诉你错在哪儿了,如图所示
===============================
我日追答几次全没了,
加3行东西到你的图2代码下面,看看输出的东西对不对
console.log(m_id)
console.log($("#" + "birth_date_" + m_id)[0])
console.log($("#" + "birth_date_" + m_id))
第一行就是先记一下,后面可能用到
第二行如果输出的是undefined的话,第三行输出里面的length应该是0,那就是ID拼接错了,审查元素,找到对应生日的格子,看看id是啥,和那个m_id拼接起来的是否一致
如果第二行输出了内容了,类似