私のアプリケーションでは、salesforceデータベースを使用しました。ボタンをクリックした後、[タスクのステータス]フィールドを更新する必要があります。newStatus-をフェッチするためにhtmlファイルのコードを使用しました
<a id="btnTaskUpdateStatus" href="#task_status_change_page" data-rel="popup" data-position-to="window" data-transition="pop">
<img src="images/task_edit24.png" width="32" height="32" />
</a>
<div data-role="popup" id="task_status_change_page" data-overlay-theme="a" data-theme="c" style="width:280px !important">
<script>$('select').selectmenu({ preventFocusZoom: true });</script>
<div data-role="header" data-theme="b">
<h1>Update Status</h1>
</div>
<div data-role="content" data-theme="d">
<div data-role="fieldcontain">
<label for="select-task-status" class="select"><strong>Status:</strong></label>
<select id="select-task-status" name="select-status" class="selectmenu">
<option value="Not Started">Not Started</option>
<option value="In Progress">In Progress</option>
<option value="Completed">Completed</option>
<option value="Waiting On someone else">Waiting On someone else</option>
<option value="Deffered">Deferred</option>
</select>
</div>
<div data-role="controlgroup" data-type="horizontal" class="center-wrapper">
<a id="btnTaskUpdateSubmit" data-role="button" data-inline="true" data-direction="reverse" data-rel="back" >Submit</a>
</div>
</div>
</div>
今jsファイルで私はコードを使用しました-
$ j('#btnTaskUpdateStatus')。click(function(e){ var recordId = $ j('#TaskRecordId')。val(); if(recordId!= null){ var currStatus = $ j('#TaskStatus')。text(); updateHTMLVal('#select-task-status'、currStatus); $('#select-task-status')。selectmenu('refresh'); } $ j('#btnTaskUpdateSubmit')。click(function(e){ var newStatus = $( "#select-task-status")。val(); if(newStatus!= currStatus){ changeTaskStatus(recordId、newStatus、creds); $('#select-task-status')。selectmenu('refresh'); $('#TaskStatus')。html(newStatus); } }); }); function changeTaskStatus(Id、newStatus){ var fields = {}; fields ["Status"] = newStatus; forcetkClient.update('Task'、Id、fields、function(response){ alert( "更新"); }、onErrorSfdc); }
問題は、ステータスを更新すると正しく更新されることですが、次に別のタスクのステータスを再度変更すると、$j('#btnTaskUpdateSubmit').click(function(e){
この関数が2回呼び出され、新しいタスクのステータスが前のタスクのステータスを上書きします。
私の質問が明確でない場合は、タスクのステータスをどのように更新するかを教えてください。前もって感謝します。どんな助けでも大歓迎です。