我有以下代码。用户添加一个campaign_name,然后从下拉列表中选择一个分割名称,然后使用查询字符串重定向回来。
<option value="{{Request::url().'/'. $uploaded_segment->id .'/'}}"></option>
<script>
$(function() {
// bind change event to select
var campaign_name = $("#campaign_name").val();
console.log(campaign_name);
$('#uploaded_segment_id').on('change', function() {
var url = $(this).val() + campaign_name; // get selected value
console.log(url);
if (url) { // require a URL
window.location = url; // redirect
}
return false;
});
});
预期结果:manage/campaigns/create/1/campaign_name 实际结果:manage/campaigns/create/1/
我没有收到错误,有时 Campaign_name 在查询字符串中连接,有时则不是。
最佳答案
当页面显示时,您将立即获取#campaign_name
的值。您希望这样做是为了响应 change
eevnt,大概是:
$(function() {
// bind change event to select
$('#uploaded_segment_id').on('change', function() {
var campaign_name = $("#campaign_name").val(); // <=== *** MOVED ***
console.log(campaign_name);
var url = $(this).val() + campaign_name; // get selected value
console.log(url);
if (url) { // require a URL
window.location = url; // redirect
}
return false;
});
});
关于javascript下拉重定向传递var问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43658137/