php - बटन क्लिक पर अलर्ट बंद करें




ajax yii (6)

पहले काम करता है? यदि आप "पूर्ण" के बजाय "सफलता" की कोशिश करें तो क्या होगा?

जब मैं बटन पर क्लिक करता हूं, अलर्ट नहीं किया जाता है। मैं क्या गलत कर रहा हूं? शायद मुझे मेरे शीर्ष लेख अनुभाग में कुछ जेएस फ़ाइलों को शामिल करने की आवश्यकता है?

यहां मेरा लॉगिन फॉर्म दृश्य है:

<?php echo CHtml::beginForm(); ?>

<div class="row">
<?php echo CHtml::label('username', 'username'); ?>
<?php echo CHtml::textField('username'); ?>
</div>
<div class="row">
<?php echo CHtml::label('password', 'password'); ?>
<?php echo CHtml::textField('password'); ?>
</div>
<?php
echo CHtml::ajaxButton('sign in', array('site/login'),array(
        'type'=>'POST',
        'update'=>'#mydiv',
        'beforeSend' => 'function(){
            alert("beforeSend");
        }',
        'complete' => 'function(){
            alert("complete");
            }',

));
?>
<?php echo CHtml::endForm(); ?>
<div id="mydiv" style="color:white;">...</div>

यहां नियंत्रक में मेरा कोड है:

public function actionLogin()
{
    $this->renderPartial('//blocks/user_info');
}

user_info बस some text गूंज


निश्चित नहीं कि यह आपकी समस्या है, लेकिन सौंपनेवाला () एआरएक्स के साथ अच्छा नहीं खेलता है। यह एक ज्ञात Yii समस्या है:

http://www.yiiframework.com/forum/index.php/topic/24699-yii-20-ajaxrenderpartial-conflict/ http://www.yiiframework.com/forum/index.php?/topic/10427- एजेक्स -clientscript

जब मैं AJAX के माध्यम से किसी फ़ॉर्म को लोड करने की कोशिश की तो समस्या में भाग गया, फिर इसे CHtml :: ajaxSubmitButton का उपयोग करके वापस सबमिट करें।


इसे इस्तेमाल करे

this->renderPartial('//blocks/user_info','', false, true);


यह Yii Ajax का एक सरल उदाहरण सबमिट करें बटन है:

<?php
echo CHtml::ajaxSubmitButton(
'Submit',
'your-url',
array(
   'type'=>'POST',
   'dataType'=>'json',
   'success'=>'js:function(data){
       if(data.result==="success"){
          // do something on success, like redirect
       }else{
         $("#some-container").html(data.msg);
       }
   }',
)
);
?>

Http://www.codexamples.com/90/chtml-ajaxsubmitbutton/ पर अधिक विस्तार


आपको सही करने के लिए रेंडर-पार्टियल फ़ंक्शन के चौथे पैरामीटर को सेट करना होगा, ताकि Yii में दृश्य के उचित कार्य के लिए आवश्यक जेएस फाइलें शामिल हो सकें।

$this->renderPartial('_form',array('model'=>$model), false, true);

मेरे कोड में यह काम करने की कोशिश करता है

<?php
echo CHtml::ajaxSubmitButton('Save','your-url',array(
   'type'=>'POST',
   'dataType'=>'json',
   'success'=>'js:function(data){
       if(data.result==="success"){
          // do something on success, like redirect
       }else{
         $("#some-container").html(data.msg);
       }
   }',
));
?>




ajaxsubmit