0
我有6個單選按鈕的問題,所以它們編碼爲1,2,3,4,5,99,還有一個輸入逐字回答的文本框。如果已選擇代碼1-5,則文本框中的值將消失,如果選擇代碼99,則文本框中的答案將顯示出來。點擊時窗體值消失
但是隻要我在文本框中單擊編輯早些時候逐字輸入,在文本框中的所有文字會消失,文本框的
ID是:Q6_99_other
這裏是腳本:
var txt = "";
$('#fieldset_Q6 input').parent().each(function() {
$(this).click(function() {
//alert('checked');
$('#Q6_99_other').on('keyup change', function() {
txt = this.value;
})
var id = $(this).children().attr('id');
if (id == 'Q6_1_99') {
$('#Q6_99_other').val(txt);
} else {
$('#Q6_99_other').val('');
}
});
});
任何有任何建議?也許我需要修改腳本的「keyup change」部分?
非常感謝, 羅伊
嗨巴爾馬,你絕對是現貨!由於Q6_99_other也是「#fieldset_Q6 input」雲端的輸入,所以它已經清除了答案。我已經將'keyup change'函數移出了每個單擊函數,並且還刪除了.each(),完美工作,非常感謝! – user1041029
還有一個問題,當我點擊文本框中的文本時,光標會跳轉到文本的開頭,爲什麼?這發生在「$('#Q6_99_other').val(txt);」,例如,如果txt ='whatever',當我點擊檢索到的文本'whatever'時,光標將指向文本的開頭,因此它看起來像'| whatever',而不是它被點擊的位置,例如'wha | tever'。 – user1041029
腳本現在看起來像下面供您參考: VAR TXT = 「」; $( '#Q6_99_other')上( 'KEYUP變化',函數(){ TXT = THIS.VALUE; })。。 $( '#fieldset_Q6輸入')的父() .click(function(){var 0d = $(this) 。兒童()ATTR( 'ID')。如果(id =='Q6_1_99'|| id =='Q6_99_other'){$('#Q6_99_other')。val(txt);} else {$('#Q6_99_other')。val('');} }); – user1041029