我正在尝试制作一个搜索表单,根据用户的关键字和Feed源从Feed中获取结果。但我不知道如何将用户的搜索词从输入框传递到data-source属性中的选定feed url。有人告诉我,我不能在jtml标记中转储js变量。除了为每个Feed重复ajax功能之外别无选择吗?任何帮助,将不胜感激。
HTML标记
<select id="choosefeed">
<option value="">Select</option>
<option data-source="http://search.com?query='keyword variable'">Feed1</option>
<option data-source="http://find.com?query='keyword variable'&result=25">Feed2</option>
</select>
<input id="input_id" type="text"><button type="submit" id="keywordsubmit">Submit</button>
<div id="searcharea"></div>
JS脚本
$('#keywordsubmit').click(function(e){
var findsource = $('#choosefeed').find(':selected');
var source = findsource.data('source');
var keyword = $('#input_id').val();
var area = $("#searcharea");
area.empty();
$.ajax({
url: source,
success: function (data) {
................
答案 0 :(得分:3)
您只需使用.replace()
即可var source = findsource.data('source').replace('keyword variable', $('#input_id').val());
但是,您可以使用jQuery.ajax的data
选项传递值。