2013-04-07 134 views
0

当页面加载时,当用户单击第一个输入框时,表单的其余部分显示在其下方,我有一个表单隐藏一半...我现在尝试提交文件到php页面,只是回应输入元素包含...然而,这是行不通的......我有一种感觉,这是因为当页面加载时隐藏了一半的表单...表单不提交输入元素到php文件

这里是形式

<form action='new-question.php' method='post' id='new-question-form'> 
    <input type='text' name='title' class='shown-input' placeholder='Ask a new question'> 
    <!-- HIDDEN UNLESS CLICKED --> 
    <div class='hidden-until-click'> 
     <textarea name='details' placeholder="Enter your question details..."></textarea> 
     <button type='button' id='upload-question' class='btn'> 
     <img src='assets/images/css_images/upload.png'> 
     upload 
     </button> 
     <input type='submit' name='submit-question' id='submit-question' value='Go!' class='bttn bttn-blue tiny'> 
    </div> 
    <!-- END HIDDEN UNTIL CLICKED--> 
</form> 

的代码和我的PHP文件

<?php 
    if (isset($_POST['submit-question'])){ 
     echo $_POST['title']; 
    } else { 
     echo "Nothing submitted; 
    } 
    ?> 

它只是口口声声说没有提交....

这里是我隐藏的div:

$(".hidden-until-click").hide(); 

,然后显示它这样

$(".widget.small form#new-question-form .hidden-until-click").show(); 

这里的var_dump( $ _POST):

array(2) { 
    ["title"]=> 
    string(0) "" 
    ["details"]=> 
    string(0) "" 
} 
+0

这是什么打印,当您后续代码var_dump($ _ POST); ? – 2013-04-07 21:24:52

+0

它现在在那里 – 2013-04-07 21:26:25

+0

我试过你的代码,除了在“没有提交”末尾缺少双引号外,它似乎工作正常。但是,目前没有任何东西可以隐藏。你如何隐藏/显示元素?它是通过CSS还是JS?如果它是通过JS,你可以请张贴代码吗? – sagibb 2013-04-07 21:27:51

回答

0

一切都适合我!

你只有你有问题是

if (isset($_POST['submit-question'])){ 
     echo $_POST['title']; 
    } else { 
     echo "Nothing submitted; 
    } 

你必须把这个隐藏字段的形式中后关闭echo "Nothing submitted;这样echo "Nothing submitted";

+0

是的,我修复了这个问题。必须删除,当格式化的问题:P – 2013-04-07 21:31:22

+0

好吧,然后检查为什么$ _POST ['submit-question']不是'发布' - 可能是您的ajaxForm – 2013-04-07 21:32:48

+0

问题或只是检查是否(isset($ _ POST [ 'title'])){echo $ _POST ['title']; } else {echo'Please Fill title';} – 2013-04-07 21:34:53

0

尝试

<input name="submit-question" type="hidden" value="yes"/>