V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
grey5659
V2EX  ›  问与答

input 传值为什么有一个没有收到呢?

  •  
  •   grey5659 · 2016-07-22 12:07:52 +08:00 · 2480 次点击
    这是一个创建于 3075 天前的主题,其中的信息可能已经有所发展或是发生改变。

    前端框架是 miniui , input 明明已经获取到数据了怎么 php 接收不到呢? https://segmentfault.com/img/bVzvM2 https://segmentfault.com/img/bVzvNT https://segmentfault.com/img/bVzvOL

    其他 input 就可以接收到。 拜托了, O(∩_∩)O 谢谢~

    我直接在往来单位的 input 里输入的话就可以获取到,那这个明明是写进去了,是怎么回事额?

    8 条回复    2016-07-22 15:08:35 +08:00
    bdbai
        1
    bdbai  
       2016-07-22 12:17:09 +08:00 via Android
    打开开发者工具,切到 Network 一栏,点击提交,观察你的请求有没有问题。这样可以确定问题出在前端还是后端。
    如果请求有问题,切到 Source 一栏,在你的提交代码上打断点调试。
    如果请求没问题,你又没有 PHP 调试器的话,把 $_GET $_POST 关键的变量全部 dump 出来看。

    为什么不贴一下代码呢。
    grey5659
        2
    grey5659  
    OP
       2016-07-22 13:39:05 +08:00
    @bdbai
    贴代码感觉很乱。。
    为什么我在里面随便加个字符,然后就可以都传递过来了,如果我不动的话就传过去为空。。。
    bdbai
        3
    bdbai  
       2016-07-22 13:45:30 +08:00 via Android
    可以贴代码的地方:
    https://gist.github.com/
    https://paste.ubuntu.com/
    https://paste.kde.org/

    估计跟 miniui 有关,用检查元素看一下那个框的情况。
    grey5659
        4
    grey5659  
    OP
       2016-07-22 13:45:58 +08:00
    @bdbai
    下面是打开往来单位列表选择:
    <form name="form1" id="form1" method="post" action="./exe_current_account.php">
    <input name="id" class="mini-hidden" />
    <div style="padding-left:11px;padding-bottom:5px;">
    <table style="table-layout:fixed;">
    <tr>
    <td style="width:70px;">往来单位:</td>
    <td style="width:150px;">
    <input name="current_unit" id="btnEdit1" class="mini-buttonedit" onbuttonclick="onButtonEdit"/>
    将选取的 current_unit 提交给 php 接收
    <script type="text/javascript">
    mini.parse();

    function onButtonEdit(e) {
    var btnEdit = this;

    mini.open({
    url: "./current_unit.html",
    title: "选择往来单位",
    width: 650,
    height: 380,
    ondestroy: function (action) {

    if (action == "ok") {
    var iframe = this.getIFrameEl();

    var data = iframe.contentWindow.GetData();
    data = mini.clone(data);

    //btnEdit.setValue(data.id);
    btnEdit.setText(data.text);
    //alert(data.text);
    }
    }
    });

    }

    </script>
    下面是 current_unit.html 显示往来单位列表
    <script type="text/javascript">
    mini.parse();

    var grid = mini.get("grid1");

    //动态设置 URL
    grid.setUrl("./data/AjaxService.php?method=SearchEmployeesUnit");
    //也可以动态设置列 grid.setColumns([]);

    grid.load();

    function GetSelecteds() {
    var rows = grid.getSelecteds();
    return rows;
    }
    function GetData() {
    var rows = grid.getSelecteds();
    var ids = [], texts = [];
    for (var i = 0, l = rows.length; i < l; i++) {
    var row = rows[i];
    ids.push(row.id);
    texts.push(row.current_unit);//将选中的行(列名)放进表单
    }
    var data = {};
    data.id = ids.join(",");
    data.text = texts.join(",");
    return data;
    }
    bdbai
        5
    bdbai  
       2016-07-22 14:32:09 +08:00 via Android
    @grey5659 检查元素看一下那个框的情况。
    miniui 我没用过,他们好像有技术支持的。
    grey5659
        6
    grey5659  
    OP
       2016-07-22 14:42:47 +08:00
    @bdbai 明明已经拿到数据了,那可以直接把这个数据再重新放到这个 input 里吗? js 我不太熟
    bdbai
        7
    bdbai  
       2016-07-22 14:49:15 +08:00 via Android
    @grey5659 检查元素看一下那个框的情况。
    grey5659
        8
    grey5659  
    OP
       2016-07-22 15:08:35 +08:00
    @bdbai
    谢谢,终于找到了,在 miniui 中 input 的 name 其实要用 textName.....坑爹
    O(∩_∩)O 谢谢
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5506 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 03:41 · PVG 11:41 · LAX 19:41 · JFK 22:41
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.