facebook风格的jquerytokeninput脚本在jqueryui模态窗口中保留值
facebook style jquery tokeninput script retains value in the jquery-ui modal window
尝试使用facebook风格的tokeninput脚本,我将以与FB相同的方式使用该脚本(使用jquery ui获取模态窗口)在社交网络系统中向朋友发送消息。
点击"打开对话框"按钮("打开者"id显示模式窗口)
javascript片段:
<script type="text/javascript">
$(document).ready(function() {
$("input[type=button]").click(function () {
alert("Would submit: " + $(this).siblings("input[type=text]").val());
});
});
</script>
<script type="text/javascript">
$(document).ready(function() {
$(".show_dialog script").remove();
$dialog = $('.show_dialog');
$dialog.dialog({
width:500,
height:300,
autoOpen: false,
title: 'Basic Dialog'
});
$('#opener').click(function() {
$dialog.dialog('open');
$(this).siblings("input[type=text]").val('this is a value ')// ADDED BY ME
//$("#demo-input-facebook-theme", $dialog).val('');
$(".border_text", $dialog).css("border","1px solid red");
// prevent the default action, e.g., following a link
return false;
});
});
</script>
html片段是:
<button id="opener">Open the dialog</button>
<div class="show_dialog" style="display:block ;">
<label class="send_meg_recipient_txt">To:</label>
<h2 id="theme">Facebook Theme</h2>
<div>
<input type="text" id="demo-input-facebook-theme" name="blah2" " /><br></br>
<input type="button" value="Submit" />
<script type="text/javascript">
var script = jQuery('<script/>').attr('src', 'js/jquery.tokeninput.js').appendTo('head');
$(document).ready(function() {
var script = jQuery('<script/>').attr('src', 'js/jquery.tokeninput.js').appendTo('head');
var q_string=$("#demo-input-facebook-theme").val();
$("#demo-input-facebook-theme",$dialog).tokenInput("token_find/my3.php?q=q_string", {
preventDuplicates: true,
theme:"facebook"
});
/*
*/
});
</script>
</div>
</div><!--end of class show_dialog-->
我可以从脚本中获得标记。但是,在标记化一次之后,如果我点击"opener"id,模式窗口就会出现,并保留其以前的标记,这显然是我不想要的。
如何摆脱它?
您似乎要加载jquery.tokeninput.js
文件两次——只要它在jQuery之后,就不应该在$(document).ready(...)
中使用它。
一旦你显示了你的模态(称为$dialog.dialog('open');
),尝试,调用:
$('#demo-input-facebook-theme').tokenInput("clear");
这应该会清除以前的所有令牌,然后您可以在这之后添加任何您想要的默认令牌。
相关文章:
- 如何通过所选索引(AngularJS)在模态弹出窗口中显示数据
- 点击AngularJS模态窗口捕捉背景事件
- 在angularJS中使用模态窗口时,在控制器之间共享对象数组
- 如何使用jquery关闭模态窗口,通过模拟模态's关闭按钮
- Angularjs - 观察模态窗口从另一个控制器关闭
- 如何在angularjs-ui-bootstrap中使用模态弹出窗口
- 模态窗口yii2中的Ajax验证数据
- 显示模态对话;在 IE 中打开一个新窗口
- 在顶部框架上显示模态弹出窗口
- Ajax 模态窗口可以访问父窗口 PHP 数据吗?
- 在选择(rails_admin)时更改时在模态窗口中添加新字段
- 在模态窗口上创建 cookie
- 如何在用户离开网页时显示模态窗口
- Magento时事通讯弹出窗口(模态窗口)在每个页面上触发.它应该只在主页上弹出
- 如何在 jquery 中浮动模态窗口
- 创建一个模态窗口以使用 AngularJS 加载数据
- 当模态有时大于屏幕时,我如何水平/垂直居中模式弹出窗口
- Angular JS将msg广播到多个视图,包括模态窗口
- 将变量从 Javascript 传递到 PHP - 弹出窗口/模态窗口
- 如何在没有引导的情况下正确处理 AngularJS 应用程序中的弹出窗口(模态)