尝试使用复选框将评论定义为私有或不私有。使用 AJAX 发布到 PHP MySQL
Posted
技术标签:
【中文标题】尝试使用复选框将评论定义为私有或不私有。使用 AJAX 发布到 PHP MySQL【英文标题】:Trying to use a checkbox to define a comment as private or not. Using AJAX to post to PHP MySQL 【发布时间】:2013-12-31 11:24:54 【问题描述】:目前它返回一个[objectO
而不是一个YES 或No 值。目前我的复选框设置为长度为 3 的 VARCHAR,但我应该使用 TINYINT 还是 Boolean。如果是这样,我必须改变什么才能让它工作?任何帮助将非常感激。谢谢。
("#add").click(function()
var chkval = "";
if($('#checkbox').is(':checked'))
chkval = "Yes";
else
chkval = "No";
//define ajax config object
var ajaxOpts =
type: "post",
url: "../controller/addComment.php",
data: "&module_ass=" + $("#leaveComment").find("input").val() + "&comment_body=" + $("#leaveComment").find("textarea").val() + "&private=" + $("#checkbox").val('chkval'),
success: function(data)
【问题讨论】:
请将您的代码放入 jsfiddle 【参考方案1】:您正在设置chkval
的值,因此您需要稍后使用它:
("#add").click(function()
var chkval = "";
if($('#checkbox').is(':checked'))
chkval = "Yes";
else
chkval = "No";
//define ajax config object
var ajaxOpts =
type: "post",
url: "../controller/addComment.php",
data: "&module_ass=" + $("#leaveComment").find("input").val() + "&comment_body=" + $("#leaveComment").find("textarea").val() + "&private=" +chkval,
success: function(data) ...
更新 这是完整的代码和jsfiddle here:
$('#Volunteers').on('click','.accept', function(event)
//if clickFlag = true then the button hasn't been clicked yet.
if(typeof this._clickFlag != 'undefined' && this._clickFlag)
//alert if the button has been clicked once already
alert("already accepted");
else
//here I send some stuff to a database. I don't want to send it twice for the same
//row, which is why I need to prevent a double click
alert('_clickFlag: '+this._clickFlag + ' First time processing!');
this._clickFlag = true;
);
【讨论】:
非常感谢,这解决了问题。 @user3036812 很高兴它修复了它,请不要忘记将其标记为解决方案。 工作正常,模块分配和文本区域异步工作,但是,检查的输入字段没有异步更新。有任何想法吗?这与我选择复选框的方式有关吗?这是一个 jsfiddle jsfiddle.net/QT84D @user3036812 发生了一些奇怪的事情似乎我的答案已经改变了?我还提供了一个我现在看不到的 jsfiddle...无论如何,请解释一下您要实现的目标,jsfiddle 不起作用,它没有指向您的服务器。【参考方案2】:你应该可以简单地使用:
data: "&module_ass=" + $("#leaveComment").find("input").val() + "&comment_body=" + $("#leaveComment").find("textarea").val() + "&private=" + chkval,
因为变量是在上面分配的。您可能还想研究使用简单的布尔值而不是字符串值“是”和“否”。
【讨论】:
以上是关于尝试使用复选框将评论定义为私有或不私有。使用 AJAX 发布到 PHP MySQL的主要内容,如果未能解决你的问题,请参考以下文章
在Fortran中,在扩展定义中,如何将公共过程设置为私有?