簡體   English   中英

jQuery IE9:無法獲取屬性'val'的值:對象為null或未定義

[英]jQuery IE9: Unable to get value of the property 'val': object is null or undefined

我在IE9中收到此錯誤,指向行return self.subQuantity.val(); 在下面的代碼段中 是什么原因造成的?

我應該在FF中完美地添加它。

部分功能:

$(document).ready(function() {
    plan = (function() {
        var plan = {
            subQuantity: $('.downgrade .count'),
...

init: function(productCatalog) {
                this.prod = productCatalog;
                this.reset();
                self = this;

                this.fetchButton.bind('click', function(e) {
                    self.fetchScenarii();
                    return false;
                }).filter(function() {
                    return self.subQuantity.val();
                })
            }

的HTML

<div class="downgrade">
...
<input type="count" name="count" />
...
</div>
  self = this; 

是錯誤的。 您將在此處寫入全局self變量 (返回window的引用)-在IE中不可寫。 添加一個var聲明

            var self = this;

它會工作。

它以未定義的值返回,因此無論您嘗試使它如何像val或length一樣,都將為您提供相同的錯誤對話框。方法在這里我如何解決

         if (typeof $("#<%=hdnSupplierDialog.ClientID%>").val() === "undefined")
                return;

我只是防止在未定義值的情況下調用該代碼,希望它對您有用:)

更改

return self.subQuantity.val();

return self.subQuantity.attr("value");

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM