2011-02-17 35 views
1

我仍然在試圖去了解JavaScript是如何包裹在海邊的價值,說我有以下查詢:獲得一個JQueryInstance

(html jQuery: '#myId') hasClass: 'myClass' 

如何獲得真或假的出來這個?例如在我的情況下,我很樂意做:

html anchor 
    onClick: 
     (((html jQuery: '#myId') 
      hasClass: 'myClass') 
       ifTrue: [doSomething] 
       ifFalse: [doSomethingElse]); 
    with: 'Magic Stuff!' 

這樣做的海濱方式是什麼?

謝謝!

回答

5

取決於您想要在客戶端還是在服務器上執行決定的位置?

決定和客戶

執行操作,您可以使用

((html jQuery: '#myId') hasClass: 'myClass') 
    then: aTrueExpression 
    else: aFalseExpression 

其中aTrueExpression' and aFalseExpression」其他(jQuery的)JavaScript表達式。

決定並在服務器上執行操作

您系列化你的表達式的結果爲AJAX回調和Smalltalk的一側執行的操作:

html jQuery ajax 
    callback: [ :value | 
     value = 'true' 
      ifTrue: [ " true block " ] 
      ifFalse: [ " false block " ] ] 
    value: ((html jQuery: '#myId') hasClass: 'myClass') 
+0

這只是讓我很快樂,非常感謝很多! – 2011-02-18 08:50:03