将变量从 javascript 传递到控制器 Codeigniter 时出现问题

发布于 2024-09-09 05:22:30 字数 1168 浏览 7 评论 0原文

我正在为此苦苦挣扎,但似乎无法让它发挥作用。
需要将当前用户日期(cdate)变量传递到我的控制器,尽管我的警报窗口显示正确的值,但该值永远不会到达控制器。
这是 javascript 代码:

$(document).ready(function() {  
    $('#submit').click(function() {  
        var mydate=new Date()  
        var year=mydate.getYear()  
        if (year < 1000)  
            year+=1900  
        var day=mydate.getDay()  
        var month=mydate.getMonth()+1  
        var daym=mydate.getDate()  
        if (daym<10)  
            daym="0"+daym  
        if (month<10)  
            month="0"+month  
        var hours=mydate.getHours()  
        var minutes=mydate.getMinutes()  
        var seconds=mydate.getSeconds()  
        var cdate=+month+"/"+daym+"/"+year  
        $.post('user/available', {curdate: cdate});  
        alert(cdate);         
    });  
});    

Controller:

$curdate=$this->input->post('curdate');  

View:

echo form_open('user/available');  
echo form_input('dateav','',$dateav);  
input type="image" src="echo base_url();images/send.png" id="submit" alt="Submit button"   
echo form_close();  

谁能告诉我我做错了什么?

I'm struggling with this and just can't seem to make it work.
Need to pass the current users date (cdate) variable to my controller and in spite my alert windows shows the correct value, that value never reaches the controller.
Here's the javascript code:

$(document).ready(function() {  
    $('#submit').click(function() {  
        var mydate=new Date()  
        var year=mydate.getYear()  
        if (year < 1000)  
            year+=1900  
        var day=mydate.getDay()  
        var month=mydate.getMonth()+1  
        var daym=mydate.getDate()  
        if (daym<10)  
            daym="0"+daym  
        if (month<10)  
            month="0"+month  
        var hours=mydate.getHours()  
        var minutes=mydate.getMinutes()  
        var seconds=mydate.getSeconds()  
        var cdate=+month+"/"+daym+"/"+year  
        $.post('user/available', {curdate: cdate});  
        alert(cdate);         
    });  
});    

Controller:

$curdate=$this->input->post('curdate');  

View:

echo form_open('user/available');  
echo form_input('dateav','',$dateav);  
input type="image" src="echo base_url();images/send.png" id="submit" alt="Submit button"   
echo form_close();  

Can anyone tell me what i'm doing wrong?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

趁微风不噪 2024-09-16 05:22:30

我建议将整个请求转储到 stdout 或其他东西,这样您就可以看到使用了什么 URL 以及所有其他参数。也许配置中有错字。

[编辑] 该函数应该返回 false,否则会发生坏事(TM)(例如表单将被发布两次等)。

如果没有任何反应,但出现了警报,则 post() 调用失败。 阅读文档,尤其是关于使用 .ajaxError()

I suggest to dump the whole request to stdout or something so you can see what URL is used and all the other parameters. Maybe there is a typo in the config.

[EDIT] The function should return false, otherwise Bad Things(TM) will happen (like the form will be posted twice and such).

If nothing happens but the alert showing up, then the post() call fails. Read the documentation and especially the part about error handling with .ajaxError()

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文