0

我有一个弹出表单,用户在该表单上提供了访问该站点的密钥。我使用 Jquery 验证用户提供的密钥。它在我的本地系统上运行良好,但是当我使用 ipad 提交表单时它不起作用。表单甚至没有提交。

我的表格是

<form name="form" method="post"> 
   <div style="width:530px;">
       <input style="display:none; height:25px;" id="downloadkey" name="downloadkey" type="text" />
       <input style="display:none;" type="submit" id="submit" name="submit" value="<?php echo $variable['QUESTION_BUTTON']['value'] ?>"/>
   </div>
   <input type="hidden" id ="box_id" value="<?php echo $box_id ?>" />
</form>

jQuery 是

  $(document).ready(function() {
            $('#submit').click(function(e) {
                var key = $('#downloadkey').val();
                var box_id = $('#box_id').val();
                var dataString = {KEY:key, BID:box_id};
                $.ajax({
                    url: "/home/validate_key",
                    type: 'POST',
                    data: dataString,
                    success: function(msg) {
                        if(msg=="false"){
                            alert("Your download key is either wrong or missing");
                        }
                        else{
                            $('#popupContact').hide();
                            $('#backgroundPopup').hide();
                        }
                    }
                });
                e.preventDefault();      
            });
        });

在我的控制器中,验证功能是

function validate_key(){
    $key = strtolower($this->input->post('KEY'));
    $id = $this->input->post('BID');
    $query = $this->db->get_where('mc_boxes', array('idmc_boxes' => $id));
    $row = $query->row();
    $download_key = strtolower($row->downloadkey);
    if($download_key == $key){
       $_SESSION['download_key'] = $key;
       $_SESSION['timeout'] = time();
    }
    else{
        echo 'false';
    }
}

我需要一些特别的东西才能让它在 ipad 上运行吗?

谢谢

4

2 回答 2

0
.bind("click touch tap", function(){
 // code
});

是我在处理 iPad 时看到的。(这肯定不是 CodeIgniter 问题。)

于 2012-08-13T19:55:51.857 回答
0

jQuery.click() 在 iOS 上无法正常运行。

尝试使用jQuery.on()或绑定其他事件,如 touchstart

于 2012-08-13T19:59:45.710 回答