用户可以通过 jQuery 拖放在我的网站上进行绘画。
保存我使用的内容。
$('#mksave').click(function(){
$("#topmenu").animateHighlight("#a7bf51", 4000);
var div_contents = $("#print").html();
$.post("save.php", { 'contents': div_contents });
alert('Your painting is saved');
})
在这里,我将内容表单 div 打印出来并通过 save.php 文件保存。
到目前为止一切都在工作。
我想要做的是当使用 klicks mksave (因此该函数将运行)时,用户被要求为这幅画命名,然后我将通过 post 发送变量。
所以必须有某种要求标题的警报屏幕。
问题是如何获得带有文本字段的警报屏幕并将给定的输入保存在 var 中,因此代码将如下所示:
$('#mkopslaan').click(function(){
$("#topmenu").animateHighlight("#a7bf51", 4000);
var div_contents = $("#print").html();
var name = //return value from user input
$.post("save.php", { 'contents': div_contents, 'name': name });
alert('Your moodboard has been saved.');
})
所以我不希望名称文本框始终可见,而只在单击时出现的框中。
编辑我不清楚。
用户必须输入名称。
最佳答案
这是一个非常丑陋的解决方案,但您可以使用 prompt()
:
var name = prompt('Give a name for your painting:');
单击
[Cancel]
时,结果是空字符串或 null
。要强制用户命名,您可以创建这个美妙的循环:var name;
do {
name = prompt('Give a name for your painting:');
} while (!name);
更简洁的解决方案也是可能的,使用
jQuery UI Dialog
之类的东西,但它们需要一些实现工作;它绝对不会那么简单:)关于jquery - 发布前获取用户值(value),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15973000/