2012-01-04 46 views
0

我必須在yii中使用jquery函數。我有這樣的代碼,並將其添加到查看頁面。插入一個jquery函數到頁面yii

<script type="text/javascript"> 
    jQuery(function() { 
    jQuery("#item").draggable(); 
    jQuery("#droppable").droppable({ 
     drop: function(event, ui) { 
     var $self = jQuery(this); 
     var dropOffset = $self.offset(); 
     var itemOffset = ui.offset; 
     var itemRelativePosition = { left: (itemOffset.left - dropOffset.left), top: (itemOffset.top - dropOffset.top) }; 
     console.log(itemRelativePosition); 
     jQuery('#layout').val('{ left: '+itemRelativePosition.left+', top: '+itemRelativePosition.top+'}'); 
     } 
    }); 
    }); 
    </script> 

但我不知道爲什麼它不work.is有任何其他技巧使用此代碼。

+0

你已經包括jQuery庫在您的查看? – Arfeen 2012-01-04 11:49:01

+0

你如何渲染這個視圖文件,render()或renderPartial()? – zuo 2012-01-04 11:49:19

+0

我已經包含在main.php – Jackson 2012-01-04 12:03:41

回答

0

下面的代碼添加到您的視圖文件:

Yii::app()->getClientScript()->registerScriptFile('//ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js'); 
Yii::app()->getClientScript()->registerScriptFile('//ajax.googleapis.com/ajax/libs/jqueryui/1.8.16/jquery-ui.min.js'); 
1

您需要註冊jQuery代碼

<?php 
// Javascript 

Yii::app()->clientScript->registerScript('register_script_name', " 
    var partner_only = '".CHTML::activeId($model,'partner_only')."'; 
    jQuery(function() { 
     jQuery('#item').draggable(); 
     jQuery('#droppable').droppable({ 
      drop: function(event, ui) { 
       var $self = jQuery(this); 
       var dropOffset = $self.offset(); 
       var itemOffset = ui.offset; 
       var itemRelativePosition = { 
        left: (itemOffset.left - dropOffset.left), top: (itemOffset.top - dropOffset.top) 
       }; 
       console.log(itemRelativePosition); 
       jQuery('#layout').val('{ left: '+itemRelativePosition.left+', top: '+itemRelativePosition.top+'}'); 
      } 
     }); 
    }); 
", CClientScript::POS_READY); 

?> 

希望這回答了你的問題

相關問題