Javascript循环来比较文本框中的值

时间:2014-12-19 19:08:58

标签: javascript php jquery ajax

对于初学者,我不使用数组

话虽如此,我需要你的帮助......我在PHP中创建了一个webform,它从mysql表中检索值并用自己的mysqli_fetch_array命令显示它们,在该循环中它为每个记录生成一个文本框......到目前为止一切顺利。

创建的文本框(输入元素)是这样的,用户可以键入如何重新排序记录的序号...示例

原始记录订单

1 Alpha 2布拉沃 3查理 4达美 5 Echo

并且用户需要它按此顺序

用户输入顺序

2 Alpha 5布拉沃 1查理 4达美 3 Echo

在插入主表之前,记录的新顺序将保存在数据库中的临时表中,kinnda就像新订单的预览一样,如下所示:

新的记录顺序

查理1 2 Aplha 3回声 4达美 5 Bravo

现在我需要的是一个帮助我显示消息的功能,如果用户复制顺序唯一,如果他们输入2个或更多记录中的数字1,当我点击预览按钮时我需要它循环所有输入框并检查它们的值,将其与其他输入进行比较并确定是否有重复....如果没有重复,继续使用PHP代码.....如果有重复项,显示错误,以便用户寻找副本并进行更改(空白处的输入将不会考虑在预览表中插入)

我已经有了这个:

<script>
function check(){
    const t='texto';
    //var conta=1;
    var contar=<?php echo $contar; ?>;
    //while (conta<=contar)
    for(var conta=1;conta<contar;conta++)
    {
        alert(conta);
        var contas=conta+1;
            if (document.forms['OrderPreview'][t+conta].value!=document.forms['OrderPreview'][t+contas].value)
            {
                alert('All Good');
                return false;
            } 
            else 
            {
                alert('Something bad');
                return true;
            }
        //conta++;
        contas=conta+1;
        if (contas>contar){alert('End');return;}
    }
};
</script>

仅适用于第一和第二输入....目前我有62,但这个数字是随机的每个数据上传...我在这里阅读一些帖子说明在javascript中使用自动增量很糟糕,但你可以看到我已尝试过两种方式进行自动增量,但似乎没有一种方法正常工作....

我也对Ajax的建议持开放态度,但我必须承认我是那种语言的新手...

任何帮助或方向都会很乐意接受,提前谢谢:)

1 个答案:

答案 0 :(得分:0)

你必须通过ajax获得$contar;值,否则一旦加载页面,php值将不会改变,因为它将在页面加载之前被检索。

尝试使用这样:

$.ajax({
    type:'post',
        url:'url to php file',
        data:{/*post variables*/},
        success:function(data){
            // use data in for loop.put entire for loop containt here           
        }
 });