嗨我的字符串值为<input type="hidden" name="SaleDetail[7835].ProductID" value=7835 /><input type="hidden" name="SaleDetail.Index" value="7835" />
但是当我在下面运行以从输入中提取值时,它只返回undefined ..
var stringVal = '<input type="hidden" name="SaleDetail[7835].ProductID" value=7835 /><input type="hidden" name="SaleDetail.Index" value="7835" />'
var inputVal = $('input[name="SaleDetail.Index"]', $(stringVal)).val();
有人可以帮忙吗?
答案 0 :(得分:1)
您的代码将搜索嵌套的子元素,因为没有嵌套的子元素它不会返回任何元素。要从元素集合中获取元素,请使用filter()
方法。
var stringVal = '<input type="hidden" name="SaleDetail[7835].ProductID" value=7835 /><input type="hidden" name="SaleDetail.Index" value="7835" />'
var inputVal = $(stringVal).filter('input[name="SaleDetail.Index"]').val();
console.log(inputVal);
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
&#13;
或者您需要通过任何其他元素包装元素以使其工作。
var stringVal = '<input type="hidden" name="SaleDetail[7835].ProductID" value=7835 /><input type="hidden" name="SaleDetail.Index" value="7835" />'
var inputVal = $('input[name="SaleDetail.Index"]', '<div>' + stringVal + '</div>').val();
console.log(inputVal);
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
&#13;