1
在我的應用程序中,我使用了salesforce數據庫。點擊一個按鈕後,我需要更新任務狀態字段。我使用的代碼在HTML文件中的js文件獲取newStatus-需要更新Salesforce數據庫任務表中的狀態
<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>
現在我使用的代碼 -
$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("Update"); }, onErrorSfdc); }
現在我的問題是,當我更新狀態,它將更新正確,但下一次我再次更改另一個任務「$j('#btnTaskUpdateSubmit').click(function(e){
」這個稱爲兩次的函數的狀態,並且新任務的狀態覆蓋以前的任務狀態。
如果我的問題不清楚,請指導我如何以您的方式更新任務狀態。 在此先感謝。任何幫助表示讚賞。
非常感謝Eric,它工作正常4我.... :) – yenu 2013-02-13 04:32:20