用textarea替换一个字符串与另一个文本
问题描述:
我有一个textarea与表单的代码,用户将复制并粘贴到他们的网站。用textarea替换一个字符串与另一个文本
在textarea的HTML代码将是这样的
UPDATE:注意下面的形式被封闭在一个文本。这将在一个文本
<form action="https://www.xxxxxxx.com/servlet/servlet?encoding=UTF-8" method="POST">
<label for="first_name">First Name</label><input id="first_name" maxlength="40" name="first_name" size="20" type="text" /><br>
<label for="last_name">Last Name</label><input id="last_name" maxlength="80" name="last_name" size="20" type="text" /><br>
<input type="submit" name="submit">
</form>
我想表单标签的URL更改为https://www.yyyyyyyyy.com/parse.php和改变形式代码复制到使用jQuery或普通的JavaScript另一个textarea的纯文本。以下是完整的HTML
<form>
<textarea rows="10" cols="80" id="oldCode">
<form action="https://www.xxxxxxx.com/servlet/servlet?encoding=UTF-8" method="POST">
<label for="first_name">First Name</label><input id="first_name" maxlength="40" name="first_name" size="20" type="text" /><br>
<label for="last_name">Last Name</label><input id="last_name" maxlength="80" name="last_name" size="20" type="text" /><br>
<input type="submit" name="submit">
</form>
</textarea>
<button onclick="generateCode()">Generate new Code</button>
<textarea id="newCode" rows="10" cols="80">
</textarea>
</form>
答
您可以按以下方式做到这一点,把type="button"
的按钮元素,因为这每次提交
<button type="button" id="generate" >Generate new Code</button>
使用下面的jQuery哪里绑定单击窗体事件按钮并替换表单的动作属性。
注意: - 你可以调用的onclick用相同的代码,而不是biniding click事件JavaScript函数
$(function(){
$("#generate").click(function(){
var value = $('#oldCode').val();
var div = $('<div></div>');
$(div).append(value);
$(div).find('form').attr('action','https://www.yyyyyyyyy.com/parse.php');
$('#newCode').val($(div).html());
});
});
答
添加id
您form
说myForm
,
$('button').click(function(){
var formClone = $('#myForm').clone();
formClone.attr('action', 'https://www.yyyyyyyyy.com/parse.php');
$('#newCode').text(formClone);
)};
答
举一个id
到窗体。
<form action="https://www.xxxxxxx.com/servlet/servlet?encoding=UTF-8" method="POST" id="form">
^
<label for="first_name">First Name</label><input id="first_name" maxlength="40" name="first_name" size="20" type="text" /><br>
<label for="last_name">Last Name</label><input id="last_name" maxlength="80" name="last_name" size="20" type="text" /><br>
<input type="submit" name="submit">
</form>
而在jQuery函数
$('#form').attr('action', 'https://www.yyyyyyyyy.com/parse.php '); // set the action attribute to required page
$('#newCode').html($('#form').html()); // set the html of textarea with id newCode as the html content of form with id form
+1
问题中的“表单”是__plain text__,而不是HTML元素。 – Teemu 2014-09-04 06:37:22
答
这里有一个简单的片断:
$('button').click(function() {
var clone = $($('#oldCode').val()).clone();
clone.attr('action', 'https://www.yyyyyyyyy.com/parse.php');
$('#newCode').val(clone[0].outerHTML);
});
即只需创建textarea值的克隆,更改属性并将克隆的HTML添加到其他textarea。
表单在textarea中。此表单应视为文本 – Prady 2014-09-04 06:57:44