如何使用 html 的参数调用 javascript 函数?

how to call javascript function with parameter from html?

我想从 html 调用我的 javascript 函数,但不知道如何,

请帮帮我,

这是我的代码:

<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但不能调用它 好吧 idk

这是我的 body:

                    @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

使用此代码:

              @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 函数参数周围添加了单引号。

您可以使用 php 在 TD 中轻松检查此情况。如果您想通过 javascript 检查此条件,那么您应该在 deisred TD 上生成动态 ID,并将该动态 ID 参数传递给您的 javascript 函数。

         @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);

    }

您不能在 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

谢谢,

我可以用 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