我想在不刷新页面的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>...and 2div和按钮如下:
<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页面?
提前感谢!
发布于 2015-04-25 13:37:03
您可以将数据参数传递给.load()。
$('#2').load(this.path+'/compile.php', { file: $("#selectID").val() })
.show().siblings('div').hide();在PHP脚本中,使用$_GET['file']获取所选的文件名。
发布于 2015-04-25 13:39:05
我不认为在您的第一个问题中,this.value会正常工作,因为this引用的是按钮,而不是select元素。
相反,您需要这样的东西:
$('#your_select_element').val();您可以删除内联javascript,并使用以下内容:
$('button').on('click', function() {
// do something with `$('#your_select_element').val();`
...
}假设有一个按钮,您可能需要添加一个类或ID来具体处理它。
正如在另一个答案中提到的,您可以向您的.load()函数添加一个数据参数。
https://stackoverflow.com/questions/29865858
复制相似问题