使用UIKIT模态获取变量(而不是提示符)
Using UIKIT Modal to get Variables (instead of prompt)
我使用FullCalendar并在单击日期时触发提示。如果我在9月30日点击,我会得到两个提示框。
我目前在javascript中使用以下代码接收两个变量:
var title = prompt('Job Title:');
var project = prompt('Project Title:');
我试图使用UIKIT模态组件创建一个单一的模态与字段来获取变量(而不是两个单独的提示弹出)。
我可以显示模式并禁用提示,但是fullcalender功能继续运行。它找不到var title并抛出错误:
Uncaught ReferenceError: title is not defined
提示符暂停代码的处理,直到提供变量为止。我的模态没有。
用模态代替提示符的正确方法是什么?什么代码最适合用于暂停JavaScript的运行,直到按下保存按钮并将变量添加到字段中?
下面是使用的代码的更多细节:
我将上面的JS代码替换为:$.UIkit.modal('#workcal-add-modal').show();
,并有以下模态:
<!-- This is the modal -->
<div id="workcal-add-modal" class="uk-modal">
<div class="uk-modal-dialog">
<a class="uk-modal-close uk-close"></a>
<form class="uk-form">
<fieldset data-uk-margin>
<input type="text" placeholder="project Name" id="wc_add_project_title">
<select>
<option>Project 1</option>
<option>Project 2</option>
</select>
<button class="uk-button">Save</button>
</fieldset>
</form>
</div>
</div>
谢谢
你需要创建一个基于promise
的方法,在那里你创建一个承诺,并在用户点击save
时解决它,或者在用户取消或关闭对话框时拒绝。
请看:https://www.promisejs.org/
我猜你是在一个函数中创建这些变量,然后结束,所以存储的变量被释放。
在脚本的顶部,创建两个变量:
var title;
var project;
当您的代码需要填充这些变量时,请使用以下代码:
title = prompt('Job Title:');
project = prompt('Project Title:');
之后,当你的代码需要使用它们时,它们将被初始化为你想要的值,只要你在那之前不使用它们。
如果没有更多的代码,看看它们是在哪里被创建和使用的,很难告诉为什么title
在你试图使用它们的时候是未定义的。它可能是作用域,也可能是在填充它们的时候,日历不是像在初始化时传入闭包那样创建的。
我还是很简单地解决了这个问题。
我只是将剩下的javascript包装在一个函数中,该函数只在点击保存按钮时触发。
$("#modal_save").on("click", function(){ ... all the code here ... });
相关文章:
- 是否可以使用WSH javascript sendKeys方法将Alt+Space发送到命令提示符
- 如何在命令提示符下运行js文件
- 当用户在命令提示符中选择任何字符串时,节点Js不为任何请求提供服务
- 您如何判断用户何时从默认的 JavaScript 提示符 () 中单击取消
- 如何在 JavaScript 中的命令提示符下进行操作
- 在提示符中单击“确定”
- 从 Python 执行提示符 Javascript
- javascript 数组提示符中的多个真答案
- 如何在使用 nsIProcess 运行文件时隐藏命令提示符窗口.bat
- 如何从javascript调用命令提示符
- 在 cordova 提示符下将子字符串添加到 results.input1
- 清除 uikit html 编辑器
- UIkit:将切换器选项卡设置为当前窗口哈希
- 使用 Javascript 在命令提示符下提示用户输入
- 在 JavaScript 提示符下将正数和负数中的数字相加
- 量角器将浏览器名称从命令提示符传递到 conf.js
- UIKit (getuikit) 滑块组件拒绝工作
- JS:这有什么问题?尝试单击链接以显示窗口.提示符
- Javascript提示符不适用于诺基亚Lumia手机
- 使用UIKIT模态获取变量(而不是提示符)