此网站使用的是jQuery 1.8.2
以下代码适用于IE 11,但在Chrome / FF中不起作用:
existingProduct = $(this).find(".csConditionCell").html();
console.log('existingProduct : ' + existingProduct);
existingProduct只在Chrome / FF中打印出一个空白。在IE中它返回testValue
function postRatingControlTest(newCondition, rating, product) {
var conditionFound = false;
var rowCount = document.getElementById("hdnRowCount").value;
var countryId = document.getElementById("hdnCountryId").value;
rating = getRatingTranslation(countryId, rating);
getHiddenRatings();
var existingProduct;
var existingRating;
$('.csGridTable tr').each(function () {
existingProduct = $(this).find(".csConditionCell").html();
console.log('existingProduct : ' + existingProduct);
if (existingProduct == newCondition) {
existingRating = $(this).find(".csRatingCell").html();
return false;
}
});
当我将existingProduct更改为:
existingProduct = $(this).html();
console.log('existingProduct : ' + existingProduct);
返回以下内容:
existingProduct : <td><input id="row0_condition" readonly="" class="csConditionCell" value="testValue"></td><td class="csAdjustmentCell"><input type="button" value="-" class="Actionbuttonstyle" style="width:20px;" onclick="adjustRating('-','0');"></td><td class="csAdjustmentCell"><input type="button" value="+" class="Actionbuttonstyle" style="width:20px;" onclick="adjustRating('+','0');"></td><td><input id="row0_rating" readonly="" class="csRatingCell" value="+0"></td><td><input id="row0_product" readonly="" class="csProductCell" value="Life"></td><td class="csDeleteCell"><input type="button" value="X" class="Actionbuttonstyle" style="width:20px;" onclick="deleteRatingRow(0);"></td>
是否有任何关于.find方法仅在IE中有效的信息?或者我做错了吗?
答案 0 :(得分:2)
input.csConditionCell
是输入元素,因此没有content
或innerHTML
。您想使用$(this).find(".csConditionCell").val()
第二次find()
尝试也是如此。如果这在IE11中有效,它只能证明想要的多么多的错误 - &#34;浏览器&#34;是