我正在使用JavaScript从隐藏字段中提取值并将其显示在文本框中.隐藏字段中的值已编码.
例如,
<input id='hiddenId' type='hidden' value='chalk & cheese' />
Run Code Online (Sandbox Code Playgroud)
被拉进去
<input type='text' value='chalk & cheese' />
Run Code Online (Sandbox Code Playgroud)
通过一些jQuery从隐藏字段中获取值(此时我丢失了编码):
$('#hiddenId').attr('value')
Run Code Online (Sandbox Code Playgroud)
问题是,当我chalk & cheese从隐藏字段中读取时,JavaScript似乎失去了编码.为了逃避chalk & cheese和amp;,我想编码保留.
是否有一个JavaScript库或jQuery方法将对字符串进行HTML编码?
我有一个图像按钮,当我点击它时,我想要一个特定的字段从文本转到可编辑的文本字段,有点像动态编辑按钮.
所以我有一定的ID纯文本(即ID ="text1"中),当我按一下按钮,文本更改为可编辑的字段,可能像$("#text1").hide();,然后$("#field1").show();,但在两者之间我需要给字段的值文本,然后当我单击按钮保存时,我应该隐藏输入字段,只显示带有新值的文本.
任何帮助将不胜感激.
感谢:D
我有以下几点:
<input type="text" id="tag_856_subfield_u_270150_676903" name="tag_856_subfield_u_270150_676903" value="http://www.test.com/2073-4441/8/1/23/pdf" class="input_marceditor noEnterSubmit" tabindex="1" size="67" maxlength="9999">
Run Code Online (Sandbox Code Playgroud)
我想通过使用以下 jquery 将文本输入类型更改为 textarea:
$('input[name^="tag_856_subfield_u"]').each(function () {
var style = $(this).attr('style'),
textbox = $(document.createElement('textarea')).attr('style', style);
$(this).replaceWith(textbox);
});
Run Code Online (Sandbox Code Playgroud)
使用上面的 jquery,我得到了一个 textarea,但是文本框中已经存在的数据被删除并检查了 Google Chrome 中的元素,我只得到以下信息:
<textarea></textarea>
Run Code Online (Sandbox Code Playgroud)
jquery 有没有办法做我想做的事情,如下所示,这样我在我的特定用例中得到以下内容?输入 id 和输入名称是动态的,因此我使用了 input[name^="tag_245_subfield_b"]。我实际上是按照这个 stackoverflow 问题来实现我的用例:如何使用 jquery 将输入元素更改为 textarea。
<textarea cols="70" rows="4" id="tag_856_subfield_u_270150_676903" name="tag_856_subfield_u_270150_676903" class="input_marceditor" tabindex="1">http://www.mdpi.com/2073-4441/8/1/23/pdf</textarea>
Run Code Online (Sandbox Code Playgroud)
提前致谢和欢呼!
我有一个页面,它通过ajax动态地引入一个表单,并将其显示在一个模态div中(一个位于覆盖整个页面的覆盖div上方).这是为了让他们在窗口关闭之前保存某些数据.除了一件事,一切都很好.
$('#save_close_form').find('*[name]').each(function(index, form_element) {
var cfe = (form_element.jquery == undefined ? $(form_element) : form_element);
console.log(cfe.attr('name') + " => " + cfe.attr('value'));
if (cfe.attr('name').match(/data\[/)) {
if (cfe.attr('type') == 'checkbox') {
if (cfe.attr('checked')) {
map[cfe.attr('name')] = 'on';
}
else {
map[cfe.attr('name')] = '';
}
}
else if (cfe.attr('type') == 'radio') {
// only get checked radio buttons
if (cfe.attr('checked')) {
map[cfe.attr('name')] = cfe.attr('value');
}
}
else {
map[cfe.attr('name')] = cfe.attr('value');
}
}
});
Run Code Online (Sandbox Code Playgroud)
在最后的else {}子句中的部分触发器TextArea和input type="text"元素,但由于某种原因,它总是能看到cfe.attr('value');作为 …
我正在使用$().post和php来改变<textarea>的内容.
脚本正在成功 - firebug清楚地显示textarea标签之间的文本已经改变,我的小警报触发.
但是,用户看不到更改.在Firefox中,根本不会发生变化,而在IE中,textarea最迟会更新10秒.
这是我正在使用的jquery:
$(document).ready(function() {
$('#pv_list li:first').addClass('hilite');
$("input[name='db_entries']:first").attr('checked', 'checked');
$("input[name='db_entries']").click(function () {
$.post("changeEntry.php", {post: $(this).val()}, function(data) {
$("textarea").text(data);alert('done');
});
$('#pv_list li').removeClass('hilite');
$(this).parent().addClass('hilite');
});
});
Run Code Online (Sandbox Code Playgroud)
起初我以为是因为页面没有验证,但它验证了xhtml过渡.
真正烦扰我的是我让它早点工作,无法弄清楚我改变了什么.
我想将从 dB 检索到的一些文本加载到 textarea 中。用户点击一个链接:
<a class="editlink" id="<?php echo $review['id']; ?>" href="#"><?php echo $review['title']; ?></a>
Run Code Online (Sandbox Code Playgroud)
JQuery 将 ID 传递给 GO.PHP:
$(".editlink").click(function() {
$.get("go.php", {param: $(this).attr('id')},
function(data) {
$('textarea#area1').html(data);
});
return false;
});
Run Code Online (Sandbox Code Playgroud)
GO.PHP 从 dB 中检索文本:
$qry = mysql_query("SELECT * FROM reviews WHERE id = ".$_GET['param']." ");
while($review = mysql_fetch_array($qry)) {
echo $review['description'];
}
Run Code Online (Sandbox Code Playgroud)
经 Firebug 控制台确认,ID 和文本已正确检索。问题是我无法将文本放入 textarea:
<textarea id="area1" rows="30" cols="55"></textarea>
Run Code Online (Sandbox Code Playgroud)
我试过: .html(data), .text(data), .val(data) 但没有显示任何东西。(请注意,dB 中的文本可能包含我想保留的 HTML 标签)。
我正在尝试<textarea>在更改事件发生时添加文本.
它在第一次变化事件中完美无缺.但是,当我删除文本区域内的文本并执行另一个更改事件时,它不起作用再添加文本?
我真的很困惑为什么它不起作用.下面是我想要完成的一个片段.
$("#test").on("change", function() {
$("#textarea_test").text("Hello");
});Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select name="test" id="test">
<option value="Test1">Test 1</option>
<option value="Test2">Test 2</option>
</select>
<textarea name="textarea_test" id="textarea_test" cols="30" rows="10"></textarea>Run Code Online (Sandbox Code Playgroud)
码:
$(".drpdwn")[0].options.value = "1"
Run Code Online (Sandbox Code Playgroud)
我需要将此值更改为 "string"
所以,我编码为,
$(".drpdwn")[0].options.value = "string"
Run Code Online (Sandbox Code Playgroud)
但是,价值就像""快速观察一样.
如何应用字符串值?