我正在尝试使用jquery替换我的url中的参数和我的文本框中的输入。另外,我需要对输入进行百分比编码。我试图使用jquery.validator.format然而它无法正常工作。建议?
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script src="http://jqueryjs.googlecode.com/svn/trunk/plugins/validate/jquery.validate.js"></script>
<script language="javascript" type="text/javascript">
$(document).ready(function () {
$("button").click(function () {
var str = "http://api.geonames.org/postalCodeSearchJSON?placename={0}&maxRows=10&username=<my username>";
alert(str);
var loc = $("#location").val();
alert(loc);
str = jQuery.validator.format(str, loc);
alert(str);
});
});
答案 0 :(得分:2)
这应该可以正常工作,包括编码百分比(通过encodeURIComponent()
):
$("button").click(function () {
var str = "http://api.geonames.org/postalCodeSearchJSON?placename={0}&maxRows=10&username=redacted";
var loc = encodeURIComponent($("#location").val());
str = jQuery.validator.format(str, loc);
alert(str);
});
jsFiddle演示:http://jsfiddle.net/mattball/FFVCj/
答案 1 :(得分:0)
$(document).ready(function () {
$("button").click(function () {
// var str = "http://api.geonames.org/postalCodeSearchJSON?placename={0}&maxRows=10&username=rbur0425";
// alert(str);
var loc = $("#location").val();
// alert(loc);
// var loc2 = encodeURIComponent(loc);
var url = "http://api.geonames.org/postalCodeSearchJSON?placename=" + loc + "&maxRows=10&username=rbur0425";
// alert(encodeURI(url));
});
});
对我有用