Yii2通过Ajax在下拉列表更改时保存标记

时间:2017-04-19 18:28:59

标签: php jquery ajax yii2

每次更改Html :: DropDownList选项时,我都会尝试在数据库表中保存标记。在调试会话中,它会在ErrorHandler.php上重定向,但不会显示错误。

我的jQuery:

var ddList = $('.dd-list');
var tagList = $('.tag-container');

ddList.on('change', function () {
    var tagHolder = document.createElement('div');
    tagHolder.setAttribute('class', 'tag-holder');
    var selected = $('.dd-list option:selected').text();
    tagHolder.setAttribute('id', selected);

    if(tagList.find('div').length > 2){
        alert('You can have most 3 tags!');
        return false;
    };

    if(tagList.find('#'+selected).length){
        return false;
    }else{
        tagHolder.append(selected);
        tagList.append(tagHolder);

        $.ajax({
            method : 'GET',
            dataType : 'text',
            url : '../post/save-tag?tag=' + selected,
            success : function (data) {
                alert("Tag saved: " + data);
            }
        });
    }
});

actionSaveTag:

public function actionSaveTag($tag)
    {
        return \Yii::$app->db->createCommand('INSERT INTO tags(tag_name)
                                            VALUES (' . $tag . ')');
    }

我也尝试VALUES ($tag)没有单引号但结果相同。 我该怎么做?感谢所有建议!

0 个答案:

没有答案