我的脚本的想法是将文本从选择菜单或文本字段发送到文本区域。到目前为止,当我选择一个选项时,我能够使选择菜单正常工作,但是当我键入内容时,它不会发送任何内容。此外,我想为此脚本添加一个时间,以便当用户选择一个选项或在其中键入内容时将发送。
现在它只适用于选择菜单...不知道如何使其适用于文本字段并添加计时器:(
<select id="status" name="status">
<option value=""></option>
<option value="Away">Away</option>
<option value="Busy">Busy</option>
<option value="Out To Lunch">Out To Lunch</option>
<option value="Offline">Offline</option>
</select>
<input name="custom_status" type="text">
<div id="counter"></div>
作为
$(function() {
$("#status").change(function() {
$("textarea[name=mess]", parent.frames['form'].document).val($(this).val());
});
$("#custom_status").change(function() {
$("textarea[name=mess]", parent.frames['form'].document).val($(this).val());
});
});
答案 0 :(得分:1)
将ID添加到自定义状态会很好:
<input id="custom_status" name="custom_status" type="text" />
然后你可以同时在两个部分上运行功能:
$("#status, #custom_status").bind('change keyup',function(){
$("textarea[name=mess]", parent.frames['form'].document).val($(this).val());
});
并像这样处理超时:
var callAway = false;
$('body').bind('mousemove keyup',function(){
clearTimeout(callAway);
callAway = setTimeout(function(){
$("#counter").text("Away");
},5000);
})
答案 1 :(得分:0)
$("[name='custom_status']").change(function() {
$("textarea[name=mess]", parent.frames['form'].document).val($(this).val());
});
或
$("[name='custom_status']").bind('keyup change', function() {
$("textarea[name=mess]", parent.frames['form'].document).val($(this).val());
});
您的选择器错误,没有id为custom_status的输入,而是一个名为custom_status的输入。