其中 $(obj).val()的值类似:h776,客户
$("#txtCustomerCode").val($(obj).val().split(',')[0]); //取得到“h776”的值
$("#txtCustomerName").val($(obj).val().split(',')[1]);//为什么是未定义?
以下代码正常,我只是调换了循序。
$("#txtCustomerCode").val($(obj).val().split(',')[1]); //取得到“客户”的值
$("#txtCustomerName").val($(obj).val().split(',')[0]);//取得到“h776”的值
这怎么解释?
我胆小,你可不要骗我。。。
检查两段代码中$(obj).val()的值是否一致。建议写法:
var splitArr = $(obj).val().split(','); $("#txtCustomerCode").val(splitArr[0]); $("#txtCustomerName").val(splitArr[1]);
一般不会出现这样的现象吧。。。
按照你的描述 如果是$(obj).val().split(',')[1]未定义的话只能是$(obj).val()发生了变化。。
你说对了
$("#txtCustomerCode").val($(obj).val().split(',')[0]); //取得到“h776”的值
alert(($(obj).val().);//h776 为什么会得到这个值
$("#txtCustomerName").val($(obj).val().split(',')[1]);//导致是未定义
@Love_Jenny.慧: 按照你下面三楼的解释,$(obj).val()的值取的就是$("#txtCustomerCode").val(),给txtCustomerCode赋值之后,$(obj).val()的值就发生了变化,所以才会导致未定义。
你是不是obj与前面的
#txtCustomerCode
#txtCustomerName 这两个有点关系?
独立的2个文本框只是自动完成的时候是在#txtCustomerCode取出来再分割后者的值放在#txtCustomerName。