在表中添加一个新行,在某些单元格中有一些下拉列表

时间:2017-02-06 08:20:10

标签: javascript php dropdown

只是想知道你们是否有任何代码(JQuery,AJAX等)将新行添加到某些列中有一些下拉列表的表中...我可以通过添加添加新行一些javascript和jquery,但由于某种原因(它以前工作,但突然停止,我不记得我做的最后一次更改,说实话)它不再工作了。首先,我使用PHP函数来检索数据库中下拉列表的内容。然后我在java脚本函数(“Addnewrow()”)中添加了HTML代码以添加新行并在特定列中包含下拉列表。事实是,只有当我删除包含PHP函数(“creaLista”)的“Addnewrow()”函数中的行时才会添加行。我已经尝试更改Jquery版本,删除所有引导文件等等,但没有任何作用。我还尝试了单引号和双引号中的不同组合。我还删除了非必要代码,例如selectpicker的“Render”部分

这是javascript部分:

export function logoutUser() {
    return dispatch => {
        console.log("logout");
        localStorage.removeItem('laravel_user_token');
        return dispatch({ type: LOGOUT_USER })
        .then(() => 
            browserHistory.push("/")
        );
    }
}

我可以补充说,第一行是在HTML中自动生成的,也调用相同的函数“crealista”,它工作正常。现在,当我点击触发“Addrow()”函数的按钮时,它什么都不做,当我删除包含“Crealista”函数的行时,它确实有效,所以它与var“tr”的方式有关正在阅读,我相信...

提前感谢您对此的任何见解!

2 个答案:

答案 0 :(得分:0)

> function CopyRow(e) {
>             var r = confirm("Do you want to Copy this record?");
>             if (r == true) {
> 
>                 var $tr = $(e).closest('tr');
>                 var $clone = $tr.clone();
>                    var lastRow = $tr.clone();
> 
>                 lastRow.find('select').each(function (idx, el) {
>                     var $el = $(el);
>                     $el.val($tr.find('select').eq(idx).val())
>                 });
>                 $tr.after(lastRow);
>               
> 
>             }
> 
>             else {
>                 return false;
>             }
>         }

它会添加新行,也会复制上一行。

答案 1 :(得分:0)

你不能在JS中使用PHP,就像你使用它一样。为了实现您的目标,您需要使用AJAX术语。

现在你将如何使用?请参阅以下代码。

考虑你有misc.js文件。 (misc.js只是随机名称)。

index.html

获取-下一row.php

function addnewrow()
{
    $('.selectpicker').selectpicker('render');
    var n = ($('.detail tr').length-0)+1;

    // Make Ajax Call 
    $.get( "ajax/get-next-row.php", { row: n }, function( tr ) {
        $('.detail').append(tr);
    });
}