-1

我有一个表单,我使用 GET/IMPORT 按钮从其他文档中获取值并进入当前表单,如下所示。以前我设置了 fix value: $file = '/user/doc.xml';inside meta.php,所以当我按下 GET/IMPORT 按钮时,它会从 /user/doc.xml 文件中获取结果。

现在我已添加<input name="file" value="" />到此表单并希望使用此文件将路径发送到 $file。我知道当我按下 GET/IMPORT 按钮时,就会调用 meta.php 文件。

所以我的问题是:如何使用此输入字段将 $file 值/路径发送到 meta.php。

这是我的脚本和$file input field

<form id=file method="POST"  >
<input name="file" value="" />

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js">
</script>
    <script type="text/javascript">
    $(document).ready(function() {
        $('.button').click(function() {
            $.get('meta.php', function(data) {
                result = $.parseJSON(data);
                $("input[name='nick_name']").val(result.avaname);
                $("#age").val(result.tavaage).attr("selected","selected");
            });
        });
    });
    </script>

<input class="button" type="button" value="GET/IMPORT" />
</form>

谢谢大家的帮助。

4

2 回答 2

1

只需从输入字段中获取值并将其添加到 url 的查询字符串中。然后在 meta.php 中,您可以从请求参数中读取文件名并加载该文件。

不要忘记验证文件名。

<input name="file" type="text" id="file">

<script type="text/javascript">
    $(document).ready(function() {
        $('.button').click(function() {
            var val = $('#file').val();

            $.get('meta.php', {file: val}, function(data) {
                var result = $.parseJSON(data);
                $('input[name="nick_name"]').val(result.avaname);
                $('#age').val(result.tavaage).attr('selected', 'selected');
            });
        });
    });
</script>

<input type="button" class="button" value="GET/IMPORT">

然后在你的meta.php你可以得到文件名$_GET['file']

希望能帮助到你

于 2013-11-06T09:45:56.533 回答
0

您可以$.get像这样使用带有“数据”的方法:

$(document).ready(function() {
    $('.button').click(function() {
         $.get('meta.php', {file: $('input[name="file"]').val()}; function(data) {
             result = $.parseJSON(data);
             $("input[name='nick_name']").val(result.avaname);
             $("#age").val(result.tavaage).attr("selected","selected");
         });
     });
 });
于 2013-11-06T09:31:39.300 回答