jQuery将textarea的值附加到输入

时间:2016-10-12 23:31:01

标签: jquery input

在Textarea中输入输入时,我希望将相同的文本附加到输入,即输入的值为" http://www。"无论我在textarea中输入什么,我都希望将其附加到输入值。

现在它总是将更改添加到更改中,例如:

(在textarea中输入google.com) 它补充说: G 走 感伤 goog 等等 这导致: http://www.ggogoogoog ......等等。

我做错了什么?



var titleLink = "";
var url = $('#text2');
	
function inputLink(){		
		titleLink = $('#text1').val();
		console.log("changed: " + titleLink);
		var http = url.val();	
		url.val(http + titleLink);
	};

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<textarea name="text1" id="text1" cols="30" rows="10" oninput="inputLink()"></textarea> <br>
<input id="text2" type="text" value="http://www.">
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:2)

问题是var http = url.val();每次输入时都会得到更新的输入值。所以

您可以使用var http = 'http://www.';代替

&#13;
&#13;
var titleLink = "";
var url = $('#text2');
	
function inputLink(){
  titleLink = $('#text1').val();  // get textarea value
  console.log("changed: " + titleLink);
  var http = 'http://www.';  // http is 'http://www.'
  url.val( http + titleLink); // append http + textarea value
};
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<textarea name="text1" id="text1" cols="30" rows="10" oninput="inputLink()"></textarea> <br>
<input id="text2" type="text" value="http://www.">
&#13;
&#13;
&#13;