我无法让我的变量在我的表单中发布。如果用户想要输入新的子类别,我使用jquery加载一个框。
以下是表格中的选择
<select id="sub_cat1" name="sub_cat1">
<option value=""></option>
<option value="new">New Sub Cat</option>
<?php
$query = "SELECT sub_category FROM blog_posts GROUP BY sub_category";
$data = mysqli_query($dbc, $query);
if (mysqli_num_rows($data) > 0) {
while ($row = mysqli_fetch_array($data)) {
$sub_category = $row['sub_category'];
echo '<option value="' . $sub_category . '">' . $sub_category . '</option>';
}
}
?>
</select>
<div id="load_sub_cat_box"></div>
这是jquery
$(document).ready(function(){
$("#sub_cat1").on("keyup change", function() {
var prod = $("#sub_cat1").val();
if(prod == 'new'){
$("#load_sub_cat_box").append('<div style="padding-top:15px;">Enter New Sub Category</div><input type="text" name="sub_cat2" />');
}
});
});
这是表格验证码
if($_POST['sub_cat1'] == "new"){
$sub_cat = mysqli_real_escape_string($dbc, trim($_POST['sub_cat2']));
}
else{
$sub_cat = mysqli_real_escape_string($dbc, trim($_POST['sub_cat1']));
}
如果我选择new,则框会在页面上加载,但由于某种原因提交表单时,它不会为$ sub_cat1加载变量。有关于jquery和表单我不知道的事情吗?
答案 0 :(得分:2)
你有两个选择元素,id =“sub_cat1”。
每页必须是唯一的。
它也是无效的HTML,在select中有一个select。