1. 程式人生 > >兩個頁面之間js的相互呼叫

兩個頁面之間js的相互呼叫

一個頁面中需要另一個頁面的資料(選擇帶回),實現---->

頁面呼叫

<span style="font-size:18px;"><a class="btnLook" href="accounting/out/paymentAmass_selectDepartmentAndContract.action?<span style="background-color: rgb(255, 102, 102);">jsFunctionNameForSelectDialog=updateNewDetailAmountFromDetailEditDialog&payee.id=${contract.payee.id}&department.id=${one.id}</span>" lookupGroup="" width="780" height="560">合同</a></span>

<span style="font-size:18px;"><script>
    function updateNewDetailAmountFromDetailEditDialog(url) {
        //獲取呼叫的那個單元格
        var InputId = $(url).attr("id");
        var $InputSum = $("#" + InputId);
        $InputSum.attr("value", SUM());
        var contractIds = contractId();
    }
</script></span>

另一個頁面

<button id="${payee.id}_${department.id}" type="submit" onclick="${jsFunctionNameForSelectDialog!=nulljsFunctionNameForSelectDialog.concat('(this);'):'javascript:void(0);'}"> 儲存 </button>

<script>
    function SUM() {
        var sumValue = 0.0;
        $(":input[tdForSum=yes]").each(
                function (i, tdForSum) {
                    sumValue = sumValue + parseFloat($(tdForSum).attr("value"));
                }
        )
        return sumValue;
    }

    function contractId() {
        var contracts = [];
        $(":input[contractId=contract]").each(
                function (i, contract) {
                    contracts [i] = $(contract).attr("value");
                }
        )
        return contracts;
    }
</script>

實現兩個頁面的js相互呼叫

如果是迴圈出來的輸入框那麼不能確定是哪個輸入框呼叫的,所以輸入框要有唯一的id,id設定成唯一的,儲存的時候給button設定一個id為那個輸入框的id,回去呼叫那個js的時候就傳入個this,拿到那個輸入框