使用javascript将选定的值传递到php中的另一个页面

时间:2015-10-21 07:19:43

标签: javascript php jquery

我是Javascript和jquery的新手。我希望从一个php页面传递多个选定的dropdown值到另一个php页面的功能。

在我的下拉列表中,我有两个按钮。' Set'并且'取消设置' .Set会将值插入数据库并从数据库中取消设置删除。

这是我的php:(php1.php)

    printf( '<h1>Update Capabilities</h1>' );
    printf( '<form action="%s" method="POST" id="capabilityform">', $_SERVER['PHP_SELF'] );
    printf( '<span class="subHeading">Capabilities</span>' );

    printf('<select name="selectedCapabilities[]" multiple>');
    foreach ($capabilityList as $i)
    {
       printf('<option value="%s">%s</option>', $i, $i);
    }
    printf( '</select>' );
    printf( '<input type="hidden" name="hosts" value="%s"/>', implode( ',', $hosts ) );
    printf( '<input id="capabilityHosts" type="hidden" name="sethosts" value="" />' );
    printf( '<input id="setCapabilitiesButton" name="setcapabilities" type="summit" value="Set Capabilities"  disabled="disabled" />' );
    printf( '<input id="unsetCapabilitiesButton" name="unsetcapabilities" type="submit" value="Unset Capabilities"  disabled="disabled" />' );
    printf( '</form>' );  

另一个php页面有两个set和unset函数。(php2.php)

function setCap($host , $capablities)
{
//....sql query here
}
function unsetCap($host , $capablities)
{
//....sql query here
}

如果我们按setCapabilities按钮,所有选定的值将转到setcap(),并且与unsetCapabilities相同。

请帮助您使用JS将选定的值传递给上述函数?

1 个答案:

答案 0 :(得分:0)

首先,您必须添加类名以选择选项。

printf( '<h1>Update Capabilities</h1>' );
        printf( '<form action="%s" method="POST" id="capabilityform">', $_SERVER['PHP_SELF'] );
        printf( '<span class="subHeading">Capabilities</span>' );

        printf('<select name="selectedCapabilities[]" class="selectedCapabilities" multiple>');
        foreach ($capabilityList as $i)
        {
           printf('<option value="%s">%s</option>', $i, $i);
        }
        printf( '</select>' );
        printf( '<input type="hidden" name="hosts" value="%s"/>', implode( ',', $hosts ) );
        printf( '<input id="capabilityHosts" type="hidden" name="sethosts" value="" />' );
        printf( '<input id="setCapabilitiesButton" name="setcapabilities" type="summit" value="Set Capabilities"  disabled="disabled" />' );
        printf( '<input id="unsetCapabilitiesButton" name="unsetcapabilities" type="submit" value="Unset Capabilities"  disabled="disabled" />' );
        printf( '</form>' );  

然后添加此javascript代码。

 <script type="text/javascript">
    $("select.selectedCapabilities").change(function(){
        var selectedCapabilities = $(".selectedCapabilities option:selected").val();
            //uncomment alert you can check if you getting right data
            //alert(selectedCapabilities);
             $.ajax({
                 url: "php2.php",
                     type: "post",
                     data: {option: $(this).find("option:selected").val()},
                     success: function(data){
                     //this one you need to show some responce from php2 file
                     $("#getservicesdatas").html(data);
                         }   });
         });

      </script>