[英]How to pass value to JS function and, then, to PHP script
我想在沒有頁面刷新的情況下在div標簽上顯示PHP腳本的結果。 我有一個.c文件列表(用戶可以在服務器上編譯它們)...
<option value="" selected="selected">Choose file </option>';
$dirPath = dir('directoryExample');
while (($file = $dirPath->read()) !== false)
{
if ($file == '.' || $file == '..') continue;
echo "<option value=\"" . trim($file) . "\">" . $file . "\n";
}
$dirPath->close();
echo '</select>
...以及兩個div和按鈕,如下所示:
<div id="2" style="display:none;"> </div>
<div id="1" style="display:visible;"> Compile...</div>
<button type="button" onclick="codiad.ccomp.compile(this.value);">Compile</button>
第一個問題:如何將所選文件傳遞給JQuery函數? this.value工作正常嗎?
這是Jquery函數:
compile: function(value) {
if(($('#1').css('display')!='none')){
$('#2').load(this.path+'\compile.php').show().siblings('div').hide();
}else if($('#2').css('display')!='none'){
$('#1').show().siblings('div').hide();
}
}
代碼工作正常,但這是第二個問題:我現在如何將值傳遞給php頁面?
提前致謝!
您可以將數據參數傳遞給.load()
。
$('#2').load(this.path+'/compile.php', { file: $("#selectID").val() })
.show().siblings('div').hide();
在PHP腳本中,使用$_GET['file']
獲取選定的文件名。
我認為在您的第一個問題中, this.value
可以正常工作,因為this
是指按鈕而不是select
元素。
相反,您將需要以下內容:
$('#your_select_element').val();
您可以刪除內聯JavaScript並使用類似以下內容的代碼:
$('button').on('click', function() {
// do something with `$('#your_select_element').val();`
...
}
假設有一個按鈕,您可能需要添加一個類或ID來專門解決它。
如另一個答案中所述,您可以將數據參數添加到您的.load()
函數中。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.