第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

使用 AJAX 將數(shù)據(jù)從 jquery 發(fā)送到 php 文件,然后再發(fā)送回

使用 AJAX 將數(shù)據(jù)從 jquery 發(fā)送到 php 文件,然后再發(fā)送回

PHP
烙印99 2022-09-24 17:12:58
在我的網(wǎng)頁上,當(dāng)用戶點(diǎn)擊一個(gè)單詞時(shí),它應(yīng)該顯示該單詞的定義。當(dāng)用戶單擊該單詞時(shí),它會(huì)將單詞變量發(fā)送到連接到牛津詞典 API 的 php 文件,并查詢?cè)搯卧~的定義,然后將該定義返回到網(wǎng)頁。問題是當(dāng)我試圖通過ajax將單詞變量傳遞給php文件時(shí),它似乎不起作用。我正在使用php包裝器來使用api,當(dāng)我手動(dòng)設(shè)置單詞查詢時(shí)沒有問題。我能夠連接到api并檢索定義和所有內(nèi)容,因此我認(rèn)為問題在于ajax部分。在這次作業(yè)之前,我從未使用過jquery,ajax或php。我不確定我做錯(cuò)了什么。請(qǐng)幫忙!我的 JS 文件function getSelectedText(){    var selectedText = '';        if (window.getSelection)               selectedText = window.getSelection();return selectedText;}// Retrieve definition $(document).ready(function(){var selected_text = getSelectedText();$('#selectable').on("dblclick", function () {$('.selection').text(selected_text);$('.is-selected').text(getSelectedText() !== '');    });$.ajax({    url: "dictionary.php", // php file path    method: "POST", // send data method    data: {"selected_text": selected_text}, // data to send {name: value}    success: function(data){        alert(data);    } // response of ajax  });});我的電腦文件$selected_text = $_POST['selected_text'];echo $selected_text;$dictionary->queryWord($selected_text);$dictionary->setResult(0);/* Get results from dictionary class */echo "<h1>Dictionary Class Results - ".$dictionary->getWord()."</h1>";echo "<b>Word:</b> ".$dictionary->getWord();echo "<br><b>Definition:</b> ".$dictionary->getDefinition();echo "<br><b>Short Definition:</b> ".$dictionary->getShortDefinition();echo "<br><b>Example:</b> ".$dictionary->getExample();/* Displays the current result set */echo "<br></br>Using result set: <b>".$dictionary->selected_result."</b>";?> 
查看完整描述

1 回答

?
POPMUISE

TA貢獻(xiàn)1765條經(jīng)驗(yàn) 獲得超5個(gè)贊

首先,函數(shù)實(shí)際上應(yīng)該返回選定的文本getSelectedText


function getSelectedText(){

    var selectedText = '';

    if (window.getSelection) selectedText = window.getSelection().toString();

    return selectedText;

    // Or even better using ternary operator: return window.getSelection ? window.getSelection().toString() : '';

}

然后,正如不可思議的帽子所說,你應(yīng)該糾正你處理事件的方式,可能如下,因?yàn)槲彝ǔJ褂毛@取API來實(shí)現(xiàn)這種目的:-


// Only fire the ajax when user double click any text/selectables

$('#selectable').on("dblclick", function () {

    // Marked contants since it won't change

    const selected_text = getSelectedText();

    // Make sure you check if the string is not empty before you do the request too

    if(selected_text.trim().length > 0)

    // Then do the request and process the output

    $.ajax({

        url: "dictionary.php", // php file path

        method: "POST", // send data method

        data: {"selected_text": selected_text}, // data to send {name: value}

        success: function(data){

            alert(data);

        }

    });

});


查看完整回答
反對(duì) 回復(fù) 2022-09-24
  • 1 回答
  • 0 關(guān)注
  • 81 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)