複数のフィールドを組み合わせて、ユーザーのプロファイル ページの 1 つの入力フィールド F に渡すコードがいくつかあります。ロード後、#Salary_para1 は最初にフィールド F に値を渡し、ユーザーが #Salary_value に値を入力すると、その値もフィールド F に渡します。チェックボックス #Salary_para2 と同じ条件。
ユーザーがプロファイル ページを保存した後に問題が発生しました。保存した後、フィールド F の値が「MYR1000 + Allowance」になるとします。ロード後、フィールド F には、「MYR1000 + 手当」ではなく、#Salary_para1 (サンプルでは「MYR」) の値が表示されたままです。
1) ロード後にフィールド F に「MYR1000 + 手当」が表示されていることを確認するには?? 2) ユーザーが #Salary_value に値を入力しなかった場合、#Salary_para1 (MYR) の値を渡さないようにする方法は? 3) ロード後のフィールド F の値が「MYR」で「+ 手当」の場合、フィールド #Salary_para1 に「MYR」と表示され、チェックボックス #Salary_para2 がチェックされるようにするにはどうすればよいですか? (戻す)
コード:
<select id="Salary_para1">
<option value="">Choose...</option>
<option value="0" selected>MYR</option>
<option value="1" >SGD</option>
</select>
<input id="Salary_value" type="text"/>
+ <input type="checkbox" id="Salary_para2" name="Salary_para2" value=" + Allowance" />Allowance<br/>
<input type="text" id="targetTextField" name="targetTextField" size="31" tabindex="0" maxlength="99" value="MYR1000 + Allowance">
$(function() {
setTarget();
$("#Salary_para1,#Salary_para2").change(setTarget);
$("#Salary_value").keyup(setTarget);
function setTarget() {
var tmp = $("option:selected", "#Salary_para1").text();
tmp += $("#Salary_value").val();
tmp += $("#Salary_para2:checked").val() || '';
$('#targetTextField').val(tmp);
}
});