如何从HTML参数调用javascript函数?

时间:2018-10-18 06:10:21

标签: laravel laravel-5 laravel-5.6

我想从html调用我的javascript函数,但是idk如何调用

请帮助我

这是我的代码:

<script type="text/javascript">
    (I WANT TO CALL THIS FUNCION)
    funtion condicionPci(val1){
            var PCI = '';

            if(val1<=100 && val1>=86){
                PCI = 'Excelente'; (result)
            }else if(val1<=85 && val1>=71){
                PCI = 'Muy Bueno';(result)
            }else if(val1<=70 && val1>=56){
                PCI = 'Bueno';(result)


            return PCI;(result)

        }
</script>

这是我的HTML代码,我想使用此foreach调用javascript 我在这里获取所有参数在我的控制器,但我想要 用js函数计算pci但不能调用它 井号

这是我的身体

                    @foreach($p as $dpci)
                    <tr>
                        <td>{{$dpci->cod_medida}}</td>

                        <td>{{$dpci->vrc}}</td>
                        <td>{{$dpci->nom_falla}}</td>
                        <td>{{$dpci->pcixpav}}</td>
                        <td onload="condicionPci({{$dpci->pcixpav}});"></td> 
                        (HERE A WANT TO CALL THE FUNCION BUT I WOULD LIKE TO 
                        SEND the parameter pcixpav)
                    </tr>
                    @endforeach

4 个答案:

答案 0 :(得分:0)

使用此代码:

              @foreach($p as $dpci)
                <tr>
                    <td>{{$dpci->cod_medida}}</td>

                    <td>{{$dpci->vrc}}</td>
                    <td>{{$dpci->nom_falla}}</td>
                    <td>{{$dpci->pcixpav}}</td>
                    <td onload="condicionPci('{{$dpci->pcixpav}}');"></td> 

                </tr>
                @endforeach

注意:我刚刚在JS函数参数周围添加了单引号。

答案 1 :(得分:0)

您可以使用php在 TD 中轻松检查这种情况。如果要通过javascript检查这种情况,则应在所需的 TD 上生成动态ID,并在JavaScript函数上传递该动态ID参数。

         @foreach($p as $dpci)
            <tr>
                <td>{{$dpci->cod_medida}}</td>

                <td>{{$dpci->vrc}}</td>
                <td>{{$dpci->nom_falla}}</td>
                <td>{{$dpci->pcixpav}}</td>
                <td id="{{'dynamicId-'.$dpci->id}}" onload="condicionPci('{{$dpci->pcixpav}}',{{'dynamicId-'.$dpci->id}});"></td> 

            </tr>
            @endforeach

在您的脚本上

<script type="text/javascript">
funtion condicionPci(val1,dynamicId){
        var PCI = '';

        if(val1<=100 && val1>=86){
            PCI = 'Excelente'; (result)
        }else if(val1<=85 && val1>=71){
            PCI = 'Muy Bueno';(result)
        }else if(val1<=70 && val1>=56){
            PCI = 'Bueno';(result)


        $('#'+dynamicId).html(PCI);

    }

答案 2 :(得分:0)

您不能在td标签上绑定onload事件。我知道这段代码看起来不太好,但是我认为这很容易让您以自己的方式理解

@foreach($p as $dpci)
<tr>
    <td>{{$dpci->cod_medida}}</td>
    <td>{{$dpci->vrc}}</td>
    <td>{{$dpci->nom_falla}}</td>
    <td>{{$dpci->pcixpav}}</td>
    <td><script>document.write(condicionPci({{$dpci->pcixpav}}))</script></td> 
</tr>
@endforeach

答案 3 :(得分:0)

谢谢

我可以用php解决

 <?php
 funtion condicionPci($val1){
        $PCI = '';

        if($val1<=100 && $val1>=86){
            $PCI = 'Excelente';
        }else if($val1<=85 && $val1>=71){
            $PCI = 'Muy Bueno';
        }else if($val1<=70 && $val1>=56){
            $PCI = 'Bueno';


        return $PCI;

    }
        ?>

HTML

                 @foreach($detallespci as $dpci)
                    <tr>
                        <td>{{$dpci->cod_medida}}</td>
                        <td>{{$dpci->vrc}}</td>
                        <td>{{$dpci->nom_falla}}</td>
                        <td>{{$dpci->pcixpav}}</td>
                        <td><?php echo condicionPci($dpci->pcixpav);?></td>
                    </tr>
                    @endforeach