【发布时间】:2012-02-04 13:19:37
【问题描述】:
尝试使用 facebook 风格的 tokeninput 脚本,我将使用与 FB 相同的方式(使用 jquery-ui 获取模式窗口)向社交网络系统中的朋友发送消息。
点击“打开对话框”按钮(“opener” id 使模态窗口出现)
javascript sn-p:
<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 sn-p 是:
<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 进行一次标记后,模态窗口就会出现,其先前的标记保留在适当的位置,这显然是我不想要的。
如何摆脱它?
【问题讨论】:
标签: javascript jquery