获取 javascript 中的 textext 标签?
Get textext tags in javascript?
大家好,我遇到了这个问题,真的不知道如何解决:
我在我的网站上使用 Textext 工具,我在 textarea 中输入了我所有的标签,但是当我需要标签时,我无法在此处获取它们,这是我的代码:
html code:
<textarea id="tagsa" rows="1" cols="70" style="color: black;" placeholder="Add Your Article Tags.. Max=7" ></textarea>
and here is my textext jquery code:
function checkLength() {
if ($("#tagsa").next().children().length < 7) {
return true;
}
return false;
}
$('#tagsa').textext({
plugins: ' prompt autocomplete ajax arrow clear suggestions tags',
prompt: 'Add one...',
ajax: {
url: '../data.json',
dataType: 'json',
cacheResults: true
},
tagsItems: eval(get_suggestion()),
//eval(get_suggestion()),
ext: {
tags: {
addTags: function (tags) {
if (checkLength()) {
$.fn.textext.TextExtTags.prototype.addTags.apply(this, arguments);
}
else
alert("Only 7 Tags Allowed");
}
}
}
}).bind('tagClick', function (e, tag, value, callback) {
var url = "Finder.aspx?tag=" + value;
window.location = url;
}).bind('isTagAllowed', function (e, data) {
var formData = $(e.target).textext()[0].tags()._formData,
list = eval(formData);
// duplicate checking
if (formData.length && list.indexOf(data.tag) >= 0) {
data.result = false;
}
});
我试过这个:
alert(document.getElementById("tagsa").value)
但它没有显示内部 text/tags
谁能帮我解决这个问题?
您确定您指的是正确的元素吗?我刚刚在我的本地机器上试过你的例子,我得到了所有的内部标签。
我在插件的文档中找不到这个操作,但在深入研究代码后我找到了一个方法。
$('#textarea').textext({
plugins: 'tags',
tagsItems: [
'PHP', 'Closure', 'Java'
]
});
$('#btn').click(function(){
var tags = $('#textarea').textext()[0].tags()._formData;
$('#result').html(JSON.stringify(tags));
});
<script src="https://code.jquery.com/jquery-2.1.4.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-textext/1.3.0/jquery.textext.min.js"></script>
<textarea id="textarea"></textarea><br />
<button id="btn">Show Tags</button>
<hr />
<pre id="result"></pre>
大家好,我遇到了这个问题,真的不知道如何解决: 我在我的网站上使用 Textext 工具,我在 textarea 中输入了我所有的标签,但是当我需要标签时,我无法在此处获取它们,这是我的代码:
html code:
<textarea id="tagsa" rows="1" cols="70" style="color: black;" placeholder="Add Your Article Tags.. Max=7" ></textarea>
and here is my textext jquery code:
function checkLength() {
if ($("#tagsa").next().children().length < 7) {
return true;
}
return false;
}
$('#tagsa').textext({
plugins: ' prompt autocomplete ajax arrow clear suggestions tags',
prompt: 'Add one...',
ajax: {
url: '../data.json',
dataType: 'json',
cacheResults: true
},
tagsItems: eval(get_suggestion()),
//eval(get_suggestion()),
ext: {
tags: {
addTags: function (tags) {
if (checkLength()) {
$.fn.textext.TextExtTags.prototype.addTags.apply(this, arguments);
}
else
alert("Only 7 Tags Allowed");
}
}
}
}).bind('tagClick', function (e, tag, value, callback) {
var url = "Finder.aspx?tag=" + value;
window.location = url;
}).bind('isTagAllowed', function (e, data) {
var formData = $(e.target).textext()[0].tags()._formData,
list = eval(formData);
// duplicate checking
if (formData.length && list.indexOf(data.tag) >= 0) {
data.result = false;
}
});
我试过这个:
alert(document.getElementById("tagsa").value)
但它没有显示内部 text/tags
谁能帮我解决这个问题?
您确定您指的是正确的元素吗?我刚刚在我的本地机器上试过你的例子,我得到了所有的内部标签。
我在插件的文档中找不到这个操作,但在深入研究代码后我找到了一个方法。
$('#textarea').textext({
plugins: 'tags',
tagsItems: [
'PHP', 'Closure', 'Java'
]
});
$('#btn').click(function(){
var tags = $('#textarea').textext()[0].tags()._formData;
$('#result').html(JSON.stringify(tags));
});
<script src="https://code.jquery.com/jquery-2.1.4.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-textext/1.3.0/jquery.textext.min.js"></script>
<textarea id="textarea"></textarea><br />
<button id="btn">Show Tags</button>
<hr />
<pre id="result"></pre>