Javascript $(…).live不是函数错误,复选框选中错误
我试图根据表单上使用的信息更新一些数据库行,但有一些错误 下面是有问题的代码:Javascript $(…).live不是函数错误,复选框选中错误,javascript,ajax,function,click,jquery,Javascript,Ajax,Function,Click,Jquery,我试图根据表单上使用的信息更新一些数据库行,但有一些错误 下面是有问题的代码: var html = ''; $(document).ready(function(){ $(".save_btn").on('click', function() { $('.response').each(function(){ //alert($(this).attr('id')); var $no = no.checked;
var html = '';
$(document).ready(function(){
$(".save_btn").on('click', function() {
$('.response').each(function(){
//alert($(this).attr('id'));
var $no = no.checked;
var $yes = yes.checked;
alert($no);
alert($yes);
if ($no === 'no') {
html = $.ajax({
url: "response14.php?questionID=" + $(this).attr('id') + "&question=" + $(this).val() + "&check=2",
async: false
}).responseText;
}
if ($yes === 'yes') {
html = $.ajax({
//url: "response.php?questionID=" + $(this).attr('id') + "&response=" + $(this).val() + "&check=1",
url: "response14.php?questionID=" + $(this).attr('id') + "&question=" + escape($(this).val()) + "&check=1",
async: false
}).responseText;
}
});
alert(html);
location.reload();
});
})
response14.php:
include("db_conn.php");
$sql = "update questions set approved = 1, question = ? where questionID = ?";
$qc = $pdo_conn->prepare($sql);
$qc->execute(array($_GET['question'], $_POST['questionID']));
echo 'saved';
使用按钮输入代码:
echo "<script src='viewsonly.js' type='text/javascript'> </script><br><center>";
include("db_conn.php");
$qry_strings4 = "SELECT * FROM `Y new questions`";
$preps4 = $pdo_conn->prepare($qry_strings4);
$preps4->execute();
// $row = $preps4->fetch(PDO::FETCH_ASSOC);
//echo "$count";
echo "<table style='border:0px; background-color:lightgrey; width:75%'><thead style='border:0px;'><tr style='border:0px solid white; background-color:#153E7E; text-align:left; color:white; padding: 5; margin: 5;'><th style='border:1px white; padding: 5; margin: 5;'>Question</th><th style='border:1px white; padding: 5; margin: 5;'>Response</th></tr></thead><tbody>";
while ($row = $preps4->fetch(PDO::FETCH_ASSOC)) {
echo "<tr style='border:1px white; background-color:lightgrey; color:black; padding: 5; margin: 5;'><td style='border:1px white; vertical-align:top; padding: 5; margin: 5;'>{$row['starName']}</td>
<td style='border:1px white; padding: 5; margin: 5;'><div id='wrap'>
<textarea cols='85' rows='2' id='{$row['questionID']}' class='response textbox'>{$row['question']}</textarea>
YES: <input type='checkbox' name='yes' value='yes'>
NO: <input type='checkbox' name='no' value='no'> </div></td></tr>";
}
echo "</tbody></table>";
echo "<button type='button' class='save_btn' style='align:right'>Save All</button><br>";
呈现的html:
<td style='border:1px white; padding: 5; margin: 5;'><div id='wrap'>
<textarea cols='85' rows='2' id='3792' class='response textbox'>Hello C!!
Where can I send you fan mail? :)
I want your autograph and I'm from the Philippines :)
God bless Cooper!</textarea>
YES: <input type='checkbox' name='yes' value='yes'>
NO: <input type='checkbox' name='no' value='no'> </div></td></tr><tr style='border:1px white; background-color:lightgrey; color:black; padding: 5; margin: 5;'><td style='border:1px white; vertical-align:top; padding: 5; margin: 5;'>Gavin Casalegno</td>
<td style='border:1px white; padding: 5; margin: 5;'><div id='wrap'>
<textarea cols='85' rows='2' id='3793' class='response textbox'>What is your religion?
Do you believe in God?
How much you measure height?</textarea>
YES: <input type='checkbox' name='yes' value='yes'>
NO: <input type='checkbox' name='no' value='no'> </div></td></tr></tbody></table><button type='button' class='save_btn' style='align:right'>Save All</button><br>
下面是错误消息:
TypeError:$..live不是函数
$.save_btn.live“单击”功能{
你知道为什么吗
TypeError: $(...).live is not a function
$(".save_btn").live('click', function() {
上述错误是因为.live已从较新版本的jQuery use.on中弃用
上述错误是因为.live已从较新版本的jQuery use.on中弃用
.live不推荐使用
在哪里定义了“否”和“是”?如果您需要$no,但是您测试了值,这是没有意义的
显示一些HTML-您似乎有多个响应,并且每个响应都有是/否?如果是,则需要命名它们才能找到。ID必须是唯一的
您甚至不需要Ajax:
$(function(){
$(".save_btn").on('click', function() {
var check = $("input[name=no]").is(":checked")?2:1;
// $(this).attr("id") next is the ID of the save button
location = "response14.php?questionID=" + $(this).attr('id') +
"&question=" + $(this).val() + "&check="+check;
});
});
认真使用
YES: <input type='checkbox' name='yes[]' value='yes'>
NO: <input type='checkbox' name='no[]' value='no'>
.live不推荐使用
在哪里定义了“否”和“是”?如果您需要$no,但是您测试了值,这是没有意义的
显示一些HTML-您似乎有多个响应,并且每个响应都有是/否?如果是,则需要命名它们才能找到。ID必须是唯一的
您甚至不需要Ajax:
$(function(){
$(".save_btn").on('click', function() {
var check = $("input[name=no]").is(":checked")?2:1;
// $(this).attr("id") next is the ID of the save button
location = "response14.php?questionID=" + $(this).attr('id') +
"&question=" + $(this).val() + "&check="+check;
});
});
认真使用
YES: <input type='checkbox' name='yes[]' value='yes'>
NO: <input type='checkbox' name='no[]' value='no'>
为什么要在重新加载页面时使用ajax?什么是“否”和“是”?$no在我看来不起作用,除非你有var no=someRadioWithIdNothank,这是我的下一个问题哈哈,参考错误:没有定义$no=no.checked;这是一个复选框,它还会起作用吗?var no=no.checked;??为什么在重新加载页面时使用ajax?还有什么不,是吗?$no在我看来不起作用,除非你有var no=someRadioWithIdNothank你,这是我的下一个问题哈哈参考错误:没有定义$no=no.checked;这是一个复选框,它还能起作用吗?var no=no.checked;???哦,好吧,wt是关于2:1的?还有为什么。live和not.on?我忘了删除live。2/1是三元的这与如果“否”被选中的情况相同检查=2;否则检查=1ah我明白了,并补充说,现在,我很有兴趣知道我强烈建议你重新考虑你的方法。你不能像你所做的那样循环,当你按照预期工作时,它只会提醒最后的响应。相反,请提交完整的表格并使用[]收音机名称中的数组表示法。然后得到no=[no,,,,,,no]和yes=[,yes,yes,yes,,yes]如此接近,response14.php?questionID=undefined&question=&check1 questionID和question,也check1应该是check=1不应该是空的,如果他们得到的是POST而不是get,那就更好了。我想也是这样,它还说回声保存了,但没有更新数据库。哦,好吧,wt是关于2:1的吗?还有为什么。活着而不是。我忘了删除live、 2/1是一个三元数,与否相同,检查=2;否则检查=1ah我明白了,并补充说,现在,我很有兴趣知道我强烈建议你重新考虑你的方法。你不能像你所做的那样循环,当你按照预期工作时,它只会提醒最后的响应。相反,请提交完整的表格并使用[]收音机名称中的数组表示法。然后得到no=[no,,,,,,no]和yes=[,yes,yes,yes,,yes]很接近,response14.php?questionID=undefined&question=&check1 questionID和question,也就是check1应该是check=1,但不应该是空的,如果他们得到的是POST而不是get,那就更好了。我想也是这样,它还说已经保存了回声,但没有更新数据库