jQuery Tokeninput添加多个onClick输入
jQuery Tokeninput add multiple input onClick
我使用jquery令牌输入并添加remove textbox js。如果分开运行,一切都很好。但当将它们组合并添加更多的txtbox时,令牌输入会继续在前一个文本框下方添加一个文本盒。
这是我的代码
<html>
<head>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js"></script>
<script type="text/javascript" src="http://loopj.com/jquery-tokeninput/src/jquery.tokeninput.js"></script>
<link rel="stylesheet" href="http://loopj.com/jquery-tokeninput/styles/token-input.css" type="text/css" />
<link rel="stylesheet" href="http://loopj.com/jquery-tokeninput/styles/token-input-facebook.css" type="text/css" />
<script type="text/javascript">
var txtbox = '<tr style="width:730px; float:left">'n'
<td></td>'n'
<td><input type="text" name="relatetxt[]" class="relatetxt" required/></td><td style="width: 50px; margin-left:20px;">as </td>'n'
<td><select name="relateID[]">'n'
<option value="1">1</option>'n'
<input type="button" onClick="removRow(this)" value="del"/><br /></td></tr>';
function addRow(btn) {
$(btn).closest('tr').append(txtbox);
$(btn).ready(function() {
$(".relatetxt").tokenInput([
{id: 7, name: "Ruby"},
{id: 11, name: "Python"},
{id: 13, name: "JavaScript"},
{id: 17, name: "ActionScript"},
{id: 19, name: "Scheme"},
{id: 23, name: "Lisp"},
{id: 29, name: "C#"},
{id: 31, name: "Fortran"},
{id: 37, name: "Visual Basic"},
{id: 41, name: "C"},
{id: 43, name: "C++"},
{id: 47, name: "Java"}
], {
hintText: "Producer",
theme: "facebook",
searchingText: "Meowing...",
preventDuplicates: true,
resultsFormatter: function(item){ return "<li style='width:300px;'>" + "<img src='" + item.pic + "' title='" + item.name + "' width='40px' style=' vertical-align:middle;' />" + "<div style='display: inline-block; padding-left: 10px;'><div class='full_name' style='width:200px; float:left; word-wrap:break-word'>" + item.name + "</div></div></li>" },
tokenFormatter: function(item) { return "<li><p>" + item.name + "</p></li>" },
});
});}
function removRow(btn) {
$(btn).closest('tr').remove();}
</script>
<script type="text/javascript">
$(document).ready(function() {
$(".relatetxt").tokenInput([
{id: 7, name: "Ruby"},
{id: 11, name: "Python"},
{id: 13, name: "JavaScript"},
{id: 17, name: "ActionScript"},
{id: 19, name: "Scheme"},
{id: 23, name: "Lisp"},
{id: 29, name: "C#"},
{id: 31, name: "Fortran"},
{id: 37, name: "Visual Basic"},
{id: 41, name: "C"},
{id: 43, name: "C++"},
{id: 47, name: "Java"}], {
hintText: "Producer",
theme: "facebook",
searchingText: "Meowing...",
preventDuplicates: true,
resultsFormatter: function(item){ return "<li style='width:300px;'>" + "<img src='" + item.pic + "' title='" + item.name + "' width='40px' style=' vertical-align:middle;' />" + "<div style='display: inline-block; padding-left: 10px;'><div class='full_name' style='width:200px; float:left; word-wrap:break-word'>" + item.name + "</div></div></li>" },
tokenFormatter: function(item) { return "<li><p>" + item.name + "</p></li>" },
});
});
</script>
</head>
<body>
<table width="730px">
<tr style="width:730px; float:left"><td><label>input: </label></td><td><input type="text" name="relatetxt[]" class="relatetxt"/></td><td style="width: 50px; margin-left:20px;">as </td><td>
<select name="relateID[]">
<option value="1">1</option>
</select> <input type="button" onClick="addRow(this)" value="add more"/></td></tr></table>
</body>
</html>
有人知道怎么解决这个问题吗?
只需要使用onClick地址添加按钮
<script>
var id = 1;
function addRow(btn) {
id++;
var txtbox = '<tr style="width:100%; float:left">'n'
<td></td>'n'
<td style="width: 300px;"><input type="text" name="relatetxt[]" class="relate'+ id +'" required/></td><td style="width: 50px; margin-left:20px;">là </td>'n'
<td style="width: 350px; margin-left:20px;"><select name="relateID[]">'n'
<?php $rel = get_checkbox("relate","id","ASC","0","10000");
foreach ($rel as $lists){
echo '<option value="'.$lists->relate_id.'">'.$lists->relate_name.'</option>';
} ?></select> 'n'
<input type="button" onClick="removRow(this)" value="Xóa"/><br /></td></tr>';
$(btn).closest('tr').append(txtbox);
$(document).ready(function() {
$(".relate"+id+"").tokenInput(<?php preget_am("anime") ?>, {
hintText: "Producer",
theme: "facebook",
searchingText: "Meowing...",
preventDuplicates: true,
tokenLimit: 1,
resultsFormatter: function(item){ return "<li style='width:300px;'>" + "<img src='" + item.pic + "' title='" + item.name + "' width='40px' style=' vertical-align:middle;' />" + "<div style='display: inline-block; padding-left: 10px;'><div class='full_name' style='width:200px; float:left; word-wrap:break-word'>" + item.name + "</div></div></li>" },
tokenFormatter: function(item) { return "<li><p>" + item.name + "</p></li>" },
});
});
}
function removRow(btn) {
$(btn).closest('tr').remove();
}
</script>
相关文章:
- 更改输入按钮's onClick参数
- onclick在使用jquery附加时不触发提交输入
- 输入类型=“;文件“;onclick有效,但文件选择不显示
- 改变“;onClick"这个jQuery的操作从清除输入文本改为将输入文本添加到下面的列表中
- 如何从该文本的 onclick 方法中更改 d3.js 文本输入
- 在 OnClick 事件上输入键的原因
- 提交按钮上的Javascript onclick将输入值存储在php数组中
- 通过参数将传递的函数分配给动态创建的输入类型的onclick事件
- 使用onclick()时,在输入中保留必需的标记
- 如何在类型为“”的输入上调用onclick函数;图像”;
- Spring MVC获取onclick输入星级的值
- 将列表元素 onclick 事件绑定到单选输入
- 如何创建表单元素输入框,标签使用javascript onclick
- 将 img 直接路径 src 传递给输入 onClick
- jquery onclick 从只有一个输入的 PHP 文件中获取数据
- Javascript-获取onclick输入的更改值
- onclick输入类型submit
- HTML使用onclick输入来运行javascript代码
- jQuery Tokeninput添加多个onClick输入
- onclick输入文件,只触发一次onChange事件