我找到了一些接近的答案,但在我的案例中没有一个有效。我有:
输入标记:
<input name="title" id="title">
的Ajax:
<script language="javascript">
function example_ajax_request() {
$('#example-placeholder').html('<p><img src="/img/ajax-loader.gif" /></p>');
setTimeout('example_ajax_request_go()', 0);
}
function example_ajax_request_go() {
$j(document).ready(function () {
var inputField = $j('#inputText').val();
$j(".button").click(function () {
$('#example-placeholder').load('preview.php?title=' + title + ' .aClass');
}
</script>
按钮调用该功能:
<input type="button" onclick="example_ajax_request()" value="Preview" />
我正在尝试通过ajax将'title'var从输入标记传递到'preview.php'。上面的代码有错误并且没有运行,你能建议正确吗?谢谢!
答案 0 :(得分:0)
您没有输入确切的错误消息(请从浏览器的控制台中输入并更新您的问题)。我只是提出了一些建议/改进:
每当您传递GET参数时,始终对该值(xyz
中的value
和url?abc=xyz&blah=value
)进行URIEncode。在javascript中有一个函数调用EncodeURIComponent(..)
。您可以使用它:
'preview.php?title=' + EncodeURIComponent(title +' .aClass')
可能的拼写错误,您在+ ' .aClass'
之前的网址中有空格。如果您需要,请使用+
或%20
明确替换它。
答案 1 :(得分:0)
找到了办法。这是:
<script type="text/javascript">
function example_ajax_request() {
$('#example-placeholder').html('<p><img src="img/ajax-loader.gif" /></p>');
$('#example-placeholder').load("preview.php?title="+$('#title').val());
}
</script>
谢谢!