2010-03-15 123 views
1

這可能是很簡單,但我無法弄清楚如何做到這一點: 我有這樣的代碼:的JavaScript/JQuery的if語句

$.post("/admin/contract", { 
          'mark_paid' : true, 
          'id' : id 
     }, 

在僞代碼,我怎麼可以這樣做:

$.post("/admin/contract", { 
          'mark_paid' : true, 
          'id' : id, 
          if(is_set(dont_email)) {print 'dont_email' : true} 
     }, 
+0

什麼是'dont_email'和'is_set'如何定義? – Gumbo 2010-03-15 17:30:57

+0

我認爲他使用php函數'is_set'來顯示他想要的僞代碼。 – ghoppe 2010-03-15 17:35:00

回答

7

我該怎麼做。

$.post("/admin/contract", { 
    'mark_paid' : true, 
    'id' : id, 
    'dont_email' : ('undefined' != typeof dont_email) 
}, 
+0

是我要寫的。最乾淨的解決方案。 – 2010-03-15 17:34:22

2

我給它一個嘗試:

$.post("/admin/contract", { 
          'mark_paid' : true, 
          'id' : id, 
          'dont_email' : is_set(dont_email) ? true : undefined 
     }, 
1
var details = { 
    'mark_paid' : true, 
    'id' : id, 
} 

if(is_set(dont_email)) { 
    details.dont_email = true; 
} 

$.post("/admin/contract", details); 

未經測試...

0

試試這個:

$.post("/admin/contract", { 
       'mark_paid' : true, 
       'id' : id, 
       'dont_email': (is_set(dont_email))?true:false 
      }, 
0

我不知道我正確理解你的問題。 dont_email是一個變量嗎?你在檢查dont_email的存在嗎?

var myDontEmail = (typeof(dont_email) != "undefined"); 

$.post("/admin/contract", { 
      'mark_paid' : true, 
      'id' : id, 
      'dont_email': myDontEmail 
     },