0

複数のフィールドを組み合わせて、ユーザーのプロファイル ページの 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 がチェックされるようにするにはどうすればよいですか? (戻す)

http://jsfiddle.net/e2ScF/69/

コード:

<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);
}
});
4

1 に答える 1

0

1) F フィールドをどこかに保存している場合にのみ可能です。リロード後に JavaScript 変数を取得することはできないためです。

2) 状態if empty or notを確認し、そこで作業を行います

3) 元に戻すことが可能です.. F フィールド var がどこかに保存されていることを考慮して... var をロードします.. それを arras に分割し、状態を確認します..

このフィドルをチェックしてください..

http://jsfiddle.net/e2ScF/75/

そして他の例をいじる..

http://jsfiddle.net/e2ScF/74/

于 2012-12-27T07:24:07.303 に答える