【问题标题】:javascript to select form optionjavascript选择表单选项
【发布时间】:2013-09-14 11:34:50
【问题描述】:
<div id="pdf">
    <script type="text/javascript">
        function get_pdf_file( elem ) {
            var filename = elem.options[elem.selectedIndex].value;
            var file_id = elem.options[elem.selectedIndex].id;
            var id = elem.options[elem.selectedIndex].index;
            // output some stuff to console: it works
            console.log( 'get_pdf_file( elem ) filename id: ' + id );
        }
    </script>
    <div id="choose_pdf">
        <form id="select_pdf_file">
            <select name="pdf_file" onChange="get_pdf_file( this )">
                <?php
                    for ( $i = 0; $i < $count_filenames; $i++ ) {
                        if ( $i == 0 ) {
                            echo '<option id="file_' . $i . '" value="' . $filenames[$i] . '" selected >' . $filenames[$i] . '</option>';
                            $pdf_file = $filenames[$i];
                        } else {
                    echo '<option id="file_' . $i . '" value="' . $filenames[$i] . '">' . $filenames[$i] . '</option>';
                        }
                    }
                    # output from above:
                    #<option id="file_1" value="tutorial_1.pdf" selected >tutorial_1.pdf</option>
                    #<option id="file_2" value="tutorial_2.pdf" >tutorial_2.pdf</option>
                    # ...
                    # ...
                ?>
            </select>
        </form>
    </div>
    <!-- here is the container to output the selected file "$pdf_file" (see above)-->
    <object width="1000" height="803" type="application/pdf" data="<?php echo $pdf_file ?>?#zoom=58.7&scrollbar=1&toolbar=1&navpanes=1" id="pdf_content">
        <p>Insert your error message here, if the PDF cannot be displayed.</p>
    </object>
</div>

变量$count_filenames 是名为$filenames 的数组中的元素数,其中包含各种.pdf 文件的名称...

相信我错过了一些代码作为用户选择 tutorial_2.pdf 的操作,例如总是输出相同的文件,即 tutorial_1.pdf...

请帮忙解决这个问题!

【问题讨论】:

    标签: javascript php forms options selected


    【解决方案1】:

    你也应该在其他情况下做同样的$pdf_file = $filenames[$i];

     else {
                echo '<option id="file_' . $i . '" value="' . $filenames[$i] . '">' . $filenames[$i] . '</option>';
    $pdf_file = $filenames[$i];
            }
    

    【讨论】:

    • ... 在 for 循环中测试 $i == 0 只是为了表明将选择数组中的第一个文件,然后在页面的对象脚本中回显...我的目标是所有的东西“无需重新加载页面,因此可能需要 AJAX 代码!
    【解决方案2】:

    更好,

    for ( $i = 0; $i < $count_filenames; $i++ ) {
        if ( $i == 0 ) 
            echo '<option id="file_' . $i . '" value="' . $filenames[$i] . '" selected >' . $filenames[$i] . '</option>';
        else 
            echo '<option id="file_' . $i . '" value="' . $filenames[$i] . '">' . $filenames[$i] . '</option>';
        $pdf_file = $filenames[$i];
    }
    

    【讨论】:

    • ... 添加“$pdf_file = $filenames[$i];” else 条件不起作用:我只想要 "
    猜你喜欢
    • 2012-10-22
    • 1970-01-01
    • 1970-01-01
    • 2012-03-21
    • 2018-09-15
    • 1970-01-01
    • 1970-01-01
    • 2017-01-30
    • 1970-01-01
    相关资源
    最近更新 更多