2011-09-21 73 views
1
$(".editAd").change({ 
    if ($(this).val() == 1) 
     { 
      $("#submitBtn").val("Next Step"); 
     } 
     else 
     { 
      $("#submitBtn").val("Submit Changes"); 
     } 
    }); 

此代碼的第二行有語法錯誤。缺少:在物業ID後。我發誓這是在有條件的val()的正確使用,但我想我可能是錯的...jQuery - 有條件的語法錯誤

我知道這是一個非常簡單的修復,但我找不到任何資源分鐘的研究,我希望SO的用戶能幫助我。 :)

謝謝!

編輯:開發人員總會犯一個愚蠢的錯誤,讓他們陷入一段時間......總是查看錯誤的代碼的完整性,因爲開發人員工具可能實際上沒有找到適當的錯誤行,如在這種情況下。

+0

嘗試分配'$(本).VAL()'給一個變量之前,如果和比較一下。走着瞧吧。 – Eonasdan

回答

4

你忘了包括函數(){}

$(".editAd").change(function(){ 
    if ($(this).val() == 1) 
     { 
      $("#submitBtn").val() = "Next Step"; 
      console.log($("#submitBtn").val()); 
     } 
     else 
     { 
      (element.attr("name") == "submitBtn").val() = "Submit Changes"; // no idea what this is but it doesn't look like it will work 
     } 
    }); 
+0

非常感謝!我知道這是愚蠢的......它總是...... – TaylorPLM

+0

我知道一些東西看起來不對!我不敢相信我沒有看到,很好! – Eonasdan

+0

這還有很多其他的錯誤,但我想你遲早會遇到那些問題:-P –

1

val()是功能執行。

設定值做類似

$('selector').val('set me');

$('selector').val() = 'set me';

從那裏開始。其他事情可能會清理。

+0

我沒有試圖設置一個值...我試圖對選擇器的值執行等同性測試。因此,雙等於。 – TaylorPLM

+0

然後這是什麼'$(「#submitBtn」)。val()=「Next Step」;' – hvgotcodes

+0

and this'(element.attr(「name」)==「submitBtn」).val()=「Submit Changes 「;' – hvgotcodes

0

Missing : after property ID 這是由於條件之前缺少function()標識符引起的。因爲它被放在括號內{} javascript分析器認爲你傳遞了一個對象字面值作爲屬性標識符if。之後它正在尋找冒號來識別房產的價值。


不知道你正試圖在這一行做:

(element.attr("name") == "submitBtn").val() = "Submit Changes"; 

但它看起來像你試圖調用val一個布爾值,它是無效的。您也正在給val()的輸出分配一個字符串,這將不起作用。

將值分配給一個元素,jQuery的val需要一個參數:

element.val("Submit Changes"); 
0

有許多問題與您的代碼。首先,你正在談論的錯誤的原因是缺少function關鍵字。這是必需的,因爲change方法將函數作爲參數。

接下來,您正在爲val方法指定一個值,該方法不正確($("#submitBtn").val() = "Next Step";)。您需要將該字符串作爲參數傳遞。

三,你的else塊很混亂。我不確定你在那裏試圖做什麼,但它會評估爲true.val() = "Submit Changes";這是完全錯誤的。這是另一個函數賦值,你試圖在布爾值上調用該函數,而不是jQuery對象。

因此,基於這一切,這是我認爲你試圖做:

$(".editAd").change(function(){ 
    if ($(this).val() == 1) { 
     $("#submitBtn").val("Next Step"); 
     console.log($("#submitBtn").val()); 
    } 
    else { 
     if($(element).attr("name") == "submitBtn") { 
      $(element).val("Submit Changes"); 
     } 
    } 
});